Bu eğiticide, Java koleksiyonları çerçevesinin farklı arayüzlerini öğreneceğiz.
Java koleksiyon çerçevesi, çeşitli veri yapılarını ve algoritmaları uygulamak için bir dizi arayüz ve sınıf sağlar.
Örneğin LinkedList
, koleksiyon çerçevesinin sınıfı, çift bağlantılı liste veri yapısının uygulanmasını sağlar.
Koleksiyonların Arayüzleri FrameWork
Java koleksiyon çerçevesi çeşitli arabirimler sağlar. Bu arayüzler, koleksiyonlar üzerinde farklı işlemler gerçekleştirmek için çeşitli yöntemler içerir.
Bu arayüzleri, alt arayüzlerini ve çeşitli sınıflardaki uygulamaları daha sonraki bölümlerde detaylı olarak öğreneceğiz. Bu öğreticide kısaca yaygın olarak kullanılan arayüzler hakkında bilgi edelim.
Java Koleksiyon Arayüzü
Collection
Arayüz koleksiyonları çerçeve hiyerarşisinin kökü arayüzüdür.
Java doğrudan uygulamaları sağlamaz Collection
arayüzüne ama gibi onun subinterfaces uygulamalarını sağlar List
, Set
ve Queue
. Daha fazla bilgi edinmek için şu adresi ziyaret edin: Java Collection Interface
Koleksiyonlar Çerçevesi Vs. Koleksiyon Arayüzü
İnsanlar genellikle koleksiyon çerçevesi ile Collection
Arayüz arasında kafaları karışır .
Collection
Arayüz koleksiyonları çerçevenin kök arayüzüdür. Çerçeve, diğer arayüzleri de içerir: Map
ve Iterator
. Bu arayüzler ayrıca alt arayüzlere sahip olabilir.
Koleksiyon Arayüzünün Alt Arayüzleri
Daha önce bahsedildiği gibi, Collection
arayüz Java sınıfları tarafından uygulanan alt arayüzleri içerir.
Collection
Arayüzün tüm yöntemleri, alt arayüzlerinde de mevcuttur.
Collection
Arayüzün alt arayüzleri şunlardır :
Liste Arayüzü
List
Arayüz bize ekleyebilir ve bir dizi gibi öğeleri kaldırmak için izin veren bir sipariş topluluğudur. Daha fazla bilgi edinmek için Java Liste Arayüzünü ziyaret edin
Arayüzü Ayarla
Set
Arayüz matematik sete benzer farklı setlerde depo elemanları olanağı sunar. Yinelenen öğeleri olamaz. Daha fazla bilgi edinmek için Java Set Interface'i ziyaret edin
Sıra Arayüzü
Queue
Biz mağaza ve erişim elemanlarının istediğinizde arayüz kullanılır First In First Out şekilde. Daha fazla bilgi edinmek için Java Sıra Arayüzü'nü ziyaret edin
Java Harita Arayüzü
Java'da Map
arayüz, öğelerin anahtar / değer çiftlerinde saklanmasına izin verir . Anahtarlar, bir haritadaki belirli bir öğeye erişmek için kullanılabilen benzersiz adlardır. Ve her anahtarın kendisiyle ilişkilendirilmiş tek bir değeri vardır. Daha fazla bilgi edinmek için Java Harita Arayüzünü ziyaret edin
Java Yineleyici Arayüzü
Java'da Iterator
arayüz, koleksiyon öğelerine erişmek için kullanılabilecek yöntemler sağlar. Daha fazla bilgi edinmek için Java Iterator Interface'i ziyaret edin
Neden Koleksiyon Çerçevesi?
Java koleksiyon çerçevesi, doğrudan kullanılabilen çeşitli veri yapıları ve algoritmalar sağlar. Bunun iki ana avantajı vardır:
- Bu veri yapılarını ve algoritmaları manuel olarak uygulamak için kod yazmak zorunda değiliz.
- Koleksiyon çerçevesi yüksek oranda optimize edildiğinden kodumuz çok daha verimli olacaktır.
Ayrıca, koleksiyon çerçevesi, belirli bir veri türü için belirli bir veri yapısı kullanmamıza izin verir. İşte birkaç örnek,
- Verilerimizin benzersiz olmasını istiyorsak
Set
, koleksiyon çerçevesi tarafından sağlanan arayüzü kullanabiliriz . - Verileri anahtar / değer çiftlerinde saklamak için
Map
arayüzü kullanabiliriz . ArrayList
Sınıf boyutlandırılabilir Dizilerin işlevsellik sağlar.
Örnek: ArrayList Koleksiyon Sınıfı
Bu öğreticiyi tamamlamadan önce, koleksiyon çerçevesinin ArrayList sınıfına bir örnek verelim.
ArrayList
Sınıf bize boyutlandırılabilir diziler oluşturmanıza olanak sağlar. Sınıf, List
arabirimi (arabirimin bir alt Collection
arabirimi olan) uygular .
// The Collections framework is defined in the java.util package import java.util.ArrayList; class Main ( public static void main(String() args)( ArrayList animals = new ArrayList(); // Add elements animals.add("Dog"); animals.add("Cat"); animals.add("Horse"); System.out.println("ArrayList: " + animals); ) )
Çıktı :
ArrayList: (Köpek, Kedi, At)
Daha sonraki eğitimlerde, örnekler yardımıyla koleksiyon çerçevesi (arayüzleri ve sınıfları) hakkında ayrıntılı bilgi edineceğiz.