Java dilinde vektörler, veri yapıları içinde önemli bir rol oynar. İşte vektörler hakkında bilmeniz gerekenler:
Vektör Nedir?: Vektör, bir veri yapısıdır ve klasik dizilerin (array) ve bağlı listelerin (linked list) özelliklerini birleştirir. İşlevsel olarak:
JAVA Dilindeki Kullanımı:
Özetle, vektörler, diziler ve bağlı listelerden daha avantajlı bir yapı sunar ve veri yönetiminde esneklik sağlar. Java’da uygulama geliştirirken vektörleri kullanarak veri yapılarını etkili bir şekilde yönetebilirsiniz . Sadi Evren Şekerin yazısını okumanızı şiddetle tavsiye ederim
Gel Gelelim Benim Uygulamama.
Okul hayatımda verilen örnekleri hep sizinle paylaşmak istedim bu da günlerden bir gün sınıfta hocamızın doğrultusunda verilen bir örnek.
// import java.util.List;
import java.util.Vector;
import javax.swing.JOptionPane;
public class App {
public static void main(String[] args) throws Exception {
int hak = 3;
String sifre = "1234";
String girilen_sifre;
Vector liste = new Vector<>();
//vektor sınıfını dahil ediyoruz ....
do {
girilen_sifre = JOptionPane.showInputDialog("Şifre Giriniz (Limit : " + hak + ")");
if (girilen_sifre.equals(sifre)) {
// sifre başarı ile
String message = "";
message += "Kayit Menusu \n";
message += "*********************\n";
message += "[1] Kayit Ekle \n";
message += "[2] Kayit Sil \n";
message += "[3] Kayit Listele \n";
message += "[0] Çıkış\n";
message += "*********************\n";
while (true) {
String secim = JOptionPane.showInputDialog(message);
if (secim.equals("1")) {
// eğer secim kayit Ekle ise
String ekle = JOptionPane.showInputDialog("Eklemek İstediğiniz Kayıtı Girin. ");
KayitEkle(ekle, liste);
} else if (secim.equals("2")) {
String sil = JOptionPane.showInputDialog("Sil İstediğiniz Kayıtı Girin. ");
kayitSil(sil, liste);
} else if (secim.equals("3")) {
listele(liste);
} else {
JOptionPane.showMessageDialog(null, "Güle Güle");
System.exit(0);
// çıkış işlemi
}
}
}
else{
hak--;
}
} while (hak > 0);
}
public static void KayitEkle(String kayit, Vector listVector) {
// kayit ekle metodu
boolean durum = true;
for (int i = 0; i < listVector.size(); i++) {
// eğer listede eleman var ise
if (listVector.get(i).equals(kayit)) {
// Eğer yok ise
durum = false;
break;
} else {
durum = true;
}
}
if (durum) {
listVector.addElement(kayit);
JOptionPane.showMessageDialog(null, "'"+kayit+"' Başarı İle Eklendi");
} else {
JOptionPane.showMessageDialog(null, "Listede Ekli !!!");
}
}
public static void kayitSil(String kayit, Vector listVector) {
boolean durum = true;
for (int i = 0; i < listVector.size(); i++) {
// eğer listede eleman var ise
if (listVector.get(i).equals(kayit)) {
// eğer böyle bir kayıt var ise
durum = true;
break;
} else {
durum = false;
}
}
if (durum) {
// eğer kayıt var ise sil
listVector.remove(kayit);
JOptionPane.showMessageDialog(null, "'"+kayit+"' Başarı İle Silindi");
} else {
JOptionPane.showMessageDialog(null, "Listede Ekli !!!");
}
}
// Kayit Listele
public static void listele(Vector listVector) {
String message = "Kayit Listele\n";
message += "*****************************\n";
for (int i = 0; i < listVector.size(); i++) {
message += (i + 1) + ". " + listVector.get(i)+"\n";
}
message += "Toplam : ("+listVector.size()+")\n";
message += "***************************\n";
JOptionPane.showMessageDialog(null, message);
}
}
Bu Geminiyi kullarak kodun detaylı açıklamalarını yazdırdım daha iyi anlamanız için :)
Kod Açıklaması
1. Kütüphanelerin Eklenmesi:
import java.util.List;
import java.util.Vector;
import javax.swing.JOptionPane;
import java.util.List;
: Java'daki List
arayüzünü kullanabilmek için eklenir.import java.util.Vector;
: Vector
sınıfını kullanabilmek için eklenir.import javax.swing.JOptionPane;
: Kullanıcı ile etkileşim için JOptionPane
sınıfını kullanabilmek için eklenir.2. Ana Sınıf:
public class App {
public static void main(String[] args) throws Exception {
...
}
}
public class App
: App
adında bir sınıf tanımlanır.public static void main(String[] args) throws Exception
: Sınıfın başlangıç noktası olan main
metodu tanımlanır.3. Değişkenler:
int hak = 3;
String sifre = "1234";
String girilen_sifre;
Vector liste = new Vector<>();
int hak = 3;
: Kullanıcının şifreyi girme hakkı 3 olarak belirlenir.String sifre = "1234";
: Doğru şifre "1234" olarak tanımlanır.String girilen_sifre;
: Kullanıcının girdiği şifreyi saklamak için kullanılır.Vector liste = new Vector<>();
: Vector
tipinde liste
adında bir nesne oluşturulur.4. Şifre Kontrolü:
do {
girilen_sifre = JOptionPane.showInputDialog("Şifre Giriniz (Limit : " + hak + ")");
if (girilen_sifre.equals(sifre)) {
...
} else{
hak--;
}
} while (hak > 0);
do-while
döngüsü ile kullanıcıdan şifre istenir.girilen_sifre = JOptionPane.showInputDialog("Şifre Giriniz (Limit : " + hak + ")");
: Kullanıcıdan şifre girişi istenir ve kalan hak sayısı gösterilir.if (girilen_sifre.equals(sifre))
: Kullanıcının girdiği şifre doğruysa if
bloğuna girilir.else
: Kullanıcının girdiği şifre yanlışsa else
bloğuna girilir ve kalan hak sayısı 1 azaltılır.while (hak > 0)
: Kalan hak sayısı 0'dan büyük olduğu sürece döngü devam eder.5. Kayıt Menüsü:
if (girilen_sifre.equals(sifre)) {
String message = "";
message += "Kayit Menusu \n";
message += "*********************\n";
message += "[1] Kayit Ekle \n";
message += "[2] Kayit Sil \n";
message += "[3] Kayit Listele \n";
message += "[0] Çıkış\n";
message += "*********************\n";
while (true) {
String secim = JOptionPane.showInputDialog(message);
...
}
}
String message
: Kayıt menüsü için mesaj metni oluşturulur.while (true)
: Sonsuz bir döngü ile menüde kalınır.String secim = JOptionPane.showInputDialog(message);
: Kullanıcıdan menü seçeneği istenir.KayitEkle
, kayitSil
, listele
veya System.exit(0)
fonksiyonları çağrılır.6. Kayıt Ekleme:
public static void KayitEkle(String kayit, Vector listVector) {
...
}
String kayit
: Eklenecek kaydı saklar.Vector listVector
: Kayıtların tutulduğu Vector
nesnesi.boolean durum = true;
for (int i = 0; i < listVector.size(); i++) {
if (listVector.get(i).equals(kayit)) {
durum = false;
break;
}
}
boolean durum
: Kaydın listedeKerem Mutlu…
İyi Kodlamalar …
Yorumlar (0)