Odak modu
Kendi Liste Sınıfımızı Yazmak
Java'da generic yapısını kullanarak verileri tuttuğumuz bir sınıf tasarlıyoruz.
Sınıfın amacı içerisinde dinamik bir Array (Dizi) tutması ve veri tipini dinamik olarak alması. Bunun için generic bir sınıf oluşturulması gerekli.
NOT : COLLECTION SINIFI KULLANILMAYACAKTIR ! KENDİ LİSTE SINIFIMIZI OLUŞTURMALIYIZ.
Sınıf özellikleri :
public class Ata { public static void main(String[] args) { MyList<Integer> liste = new MyList<>(); System.out.println("Dizideki Eleman Sayısı : " + liste.size()); System.out.println("Dizinin Kapasitesi : " + liste.getCapacity()); liste.add(10); liste.add(20); liste.add(30); liste.add(40); System.out.println("Dizideki Eleman Sayısı : " + liste.size()); System.out.println("Dizinin Kapasitesi : " + liste.getCapacity()); liste.add(50); liste.add(60); liste.add(70); liste.add(80); liste.add(90); liste.add(100); liste.add(110); System.out.println("Dizideki Eleman Sayısı : " + liste.size()); System.out.println("Dizinin Kapasitesi : " + liste.getCapacity()); } }
Dizinin Kapasitesi : 10 Dizideki Eleman Sayısı : 0 Dizinin Kapasitesi : 10 Dizideki Eleman Sayısı : 4 Dizinin Kapasitesi : 20 Dizideki Eleman Sayısı : 11
public class Ata {
public static void main(String[] args) {
MyList<Integer> liste = new MyList<>();
liste.add(10);
liste.add(20);
liste.add(30);
System.out.println("2. indisteki değer : " + liste.get(2));
liste.remove(2);
liste.add(40);
liste.set(0, 100);
System.out.println("2. indisteki değer : " + liste.get(2));
System.out.println(liste.toString());
}
}
2. indisteki değer : 30
2. indisteki değer : 40
[100,20,40]
public class Ata {
public static void main(String[] args) {
MyList<Integer> liste = new MyList<>();
System.out.println("Liste Durumu : " + (liste.isEmpty() ? "Boş" : "Dolu"));
liste.add(10);
liste.add(20);
liste.add(30);
liste.add(40);
liste.add(20);
liste.add(50);
liste.add(60);
liste.add(70);
System.out.println("Liste Durumu : " + (liste.isEmpty() ? "Boş" : "Dolu"));
// Bulduğu ilk indeksi verir
System.out.println("Indeks : " + liste.indexOf(20));
// Bulamazsa -1 döndürür
System.out.println("Indeks :" + liste.indexOf(100));
// Bulduğu son indeksi verir
System.out.println("Indeks : " + liste.lastIndexOf(20));
// Listeyi Object[] dizisi olarak geri verir.
Object[] dizi = liste.toArray();
System.out.println("Object dizisinin ilk elemanı :" + dizi[0]);
// Liste veri türünde alt bir liste oluşturdu
MyList<Integer> altListem = liste.subList(0, 3);
System.out.println(altListem.toString());
// Değerim listedeki olup olmadığını sorguladı
System.out.println("Listemde 20 değeri : " + liste.contains(20));
System.out.println("Listemde 120 değeri : " + liste.contains(120));
// Listeyi tamamen boşaltır ve varsayılan boyutuna çevirir
liste.clear();
System.out.println(liste.toString());
}
}
Liste Durumu : Boş
Liste Durumu : Dolu
Indeks : 1
Indeks :-1
Indeks : 4
Object dizisinin ilk elemanı :10
[10,20,30,40]
Listemde 20 değeri : true
Listemde 120 değeri : false
[]
Sektörde en çok aranan yazılım becerilerini kazan
Yapay zeka desteği, birebir mentörlük saatleri, canlı dersler ve senin için özel hazırlanmış içeriklerle eksiklerini tamamla, düzenli geri bildirimler al ve öğrenme sürecini en verimli hale getir.
Yunus Emre Kabakcı
Patika+ mezunuPatika+ Fullstack Web Development Bootcamp mezunumuz Yunus Emre,
3 ay içinde Katar’dan aldığı teklif ile, global bir şirket olan Pavo Group’da işe başladı!
“İçerik zenginliği, mentor desteği, ileriye dönük bir network sağlaması ve dünyada en çok tercih edilen frameworkler üzerinden bir eğitim veriyor olması Patika+’ı tercih etmemin temel sebepleri oldu!“
Yorum yapabilmek için derse kayıt olmalısın!