Java Koleksiyon Sınıfları



Koleksiyonlar klasik arraylar gibidir fakat arraylarda kullanamadığımız bir çok metodu bu sınıflarda kullanabiliriz. Ayrıca arraylarda var olan oluştururken boyutunu verme zorunluğu veya boyutunu aşınca hata vermesi gibi canımızı sıkan şeyler burada yoktur.

İnceleyeceğimiz koleksiyonlar :

  • ArrayList
  • HashMap
  • TreeMap

  • Arraylist :

Index-base bir yapıdır. Aslında Array gibidir fakat klasik Array'dan farkı oluşturulurken boyutunu vermemize gerek yoktur.Add metodu ile yeni öğeler eklendikçe boyutunu otomatik artar. Bu yüzden bellekte boşuna yer kaplamaz bu bakımdan iyidir.

Örnek bir ArrayList tanımı yaparsak :
ArrayList<Ogrenci> ogrenciler= new ArrayList<ogrenci>();
ogrenciler.add(new Ogrenci());
ogrenciler.add(new YuksekOgrenci());

Burada ek bilgi olarak diyelim ki yüksek yapan bir öğrenci olsun bu öğrencinin türetildiği sınıf YuksekOgrenci sınıfı olsun. Bu durumda türü Ogrenci olan bir ArrayList'e biz bu YuksekOgrenci'den türetilen nesneleri atabiliriz. Sonuçta ikiside öğrencidir

ArrayList Sınıfında Kullandığımız Bazı Metodlar:
Ogrenci safak = new Ogrenci();
ogrenciler.add(0, safak); = bu sayede safak ogrencisi 0. indexe atanır

boolean contains(Object element) // Bu metoda gönderilen elementin ArrayList'te mevcut olup olmadığına bakarak bool değer döndürür.
boolean remove(Object element) // Kendisine gönderilen nesneyi ArrayList'te bulup siler.
Array'daki verilerin ArrayList'e aktarılması
List<ogrenci> x = new List<ogrenci>();
ArrayList<insan> y = new ArrayList<insan>();
y.addAll(x); // bütün x listesini y’ye atar.

ArrayList'teki verilerin Array'a aktarılması

ArrayList ogrenciler= new ArrayList();
students.add(new Student("Safak"));
students.add(new Student("Berkay"));
students.add(new Student("Ali"));

Ogrenci[] ogrenciListesininKopyasi = new Ogrenci[ogrenciler.size()]; // ogrenciler arraylisti büyüklüğünde ogrenciListesininKopyasi arrayı tanımladık.

ogrenciler.toArray(ogrenciListesininKopyasi ); // toArray metodu ile students arraylisti copyOfStudents ine kopyalanıyor.


ArrayListeki tüm verileri alan for yapısı :


for (Student s : students) {
……;
}

Devam Edecek..

0 yorum :

Yorum Gönder