Veri yapıları en basitinden, verileri kolayca yönetmemizi sağlayan arayüz ve soyut sınıflardan oluşan hazır sınıflardır. Bir çok ihtiyaca göre hazırlanmış veri yapısı vardır. En çok bilinen ve kullanılanlardan bir kaç tanesinden bahsedip, ne tür avantajları var ne hangi durumlarda kullanılması uygundur. Bunun üzerine bir kaç satır karalayayım. Array -> Bir dizi'dir. Genellikle sıralı veri eklemek içindir ve fazla fonksiyonel değildir. Fakat bir çok veri yapısı içinde geleneksel yöntem ile geliştirilmiş Array'in alt yapısı kullanılır. İlk Veri Yapımız : ArrayList - > ArrayList, bir List implementasyonudur. List arayüz sınıfından çok şekillilik yeteneğini alır ve metodlarını implemente eder. Örnek bir List tanımı : PHP: List<Data Tipi> list = new ArrayList<Data Tipi> ; //JDK 6 ve öncesi tanımlama List<Data Tipi> list = new ArrayList<> ; //JDK 7 ve sonrası tanımlama //Bu tanımlamada data tipini JDK 7 içinde bulunana diomand operatör yeteneği ile belirleyebiliyor. String tanımlı örneği : List<String> list = new ArrayList<String> ; //JDK 6 List<String> list = new ArrayList<> ; //JDK 7 ArrayList'in bir çok metodu bulunmaktadır. En çok kullanılan metodu add ,'dir. add, içine List arayüzünde tanımlanmış, data tipini alır. Veri yapıları içinde, ekleme işlemini en hızlı, performanslı ve verimli gerçekleştiren veri yapısıdır. Ekleme işlemini sırayla yapar ve index'i 0'dan başlar. Performans ve verim olayı ise, şundan kaynaklanır. Her veri yapısı, ilk new operatörü ile oluşturulduğunda bellekte 10 birimlik kendine yer açar ve eklendikçe varolan element sayısının %100 fazlası kadar, her seferinde ram'de kendine bellek ayırır. ArrayList, ekleme işlemi yaparken, bellekte kendine %50 kadar bellekte kendine yer açar. remove ' metodu listemizin içindeki veriyi siler. remove metodu iki şekilde çalışabilir. Silinecek element'in ya liste içindeki index numarasını verirsiniz yada sizin tanımladığınız özel bir veri tipi ise, objenin kendisini verirsiniz. özel veri tipinden kasıtım şudur. Mesela sizin Kullanici diye bir sınıfınız olsun. PHP: class Kullanici Siz database, herhangi bir dosya yada ram üzerindeki bir veriyi, yada en basit örneği online kullanıcılarınızı bir liste içinde tutmak istiyorsunuz. Tanımlamayı şu şekilde yaparsınız. PHP: List<Kullanici> onlineKullaniciList = new ArrayList<Kullanici> ; //JDK 6 tanımlaması List<Kullanici> onlineKullaniciList = new ArrayList<> ; //JDK 7 tanımlaması Bu listeyi her login olan kullanıcı için çekip, varolan listemize dolduralım. PHP: login logout Diğer bir yararlı metodu ise, asList - > metodudur. Bu metod, standart Array nesnemiz içinde bulunan değerleri, ArrayList nesnemize cast işini yapar. Böylece Array nesnesinin kabiliyetsizliğinden kurtulup, rahatça ArrayList metodunun yeteneklerinden yararlanabilirsiniz. Örnek ; PHP: Array array = ; ArrayList. asList ; addAll -> Bu metod ile daha önce oluşturup, içine veri doldurduğunuz arrayList nesnesinin değerlerini bizim, ArrayList'imizin içine eklememizi sağlar. Bunu, özellikle farklı listeleri birleştirirken kullanabilirsiniz. clear -> Bu metod ilede ArrayList nesnemizin içindeki verilerin hepsini silmiş oluruz. set -> Bu metodumuz ile ArrayList nesnemiz içindeki verilerin değerlerini değiştirebiliriz. isEmpty -> ArrayList'in içinin dolu yada boş olduğunu kontrol etmek için kullanılır. Bu metod hem null hemde nesnenin içinde element olup, olmadığını kontrol eder. ArrayList içine null değerlerde eklenebilir. Null değerden kastım, unutmayın ArrayList içine sadece Obje'ler eklenebilir, primitif değerler eklenemez. Örnek şöyle bir ekleme yapabilirsiniz. arrayList. add(new Integer ; gibi Bu değeri null olan bir objeyi temsil eder. Yukarıda String üzerinden genelde örnek verdim, isterseniz Integer, Long vb. data tipinde kullanabilirsiniz. Aklıma gelenler bunlar şimdilik.. Arada cümlelerde yanlışlık olabilir, kendi bilgim daarcığında oturup bir hamlede yazdım. Farklı bir yerde link vermeden paylaşanı oyarım! iyi geceler..