Çoğu programlama dili Dizileri destekler. Aynı veri türündeki birden çok öğeyi depolamak için kullanılan bir veri yapısıdır. Altı öğe için bildirilen dizi varsa, on öğe depolamak için kullanılamaz. Bu nedenle, diziler dinamik değildir ve bildirildikten sonra dizinin boyutunu değiştiremez. Java gibi programlama dilleri, verileri dinamik olarak depolamak için kullanılan Koleksiyonları destekler. Koleksiyonlar, öğe ekleme ve öğe silme gibi işlemleri destekler. Koleksiyon hiyerarşisinde bir takım arayüzler ve sınıflar vardır. Temel arabirim Koleksiyon arabirimidir. Set, Koleksiyon arayüzünü genişleten bir arayüzdür. Çoğaltmaya izin vermez. TreeSet ve HashSet, Koleksiyon hiyerarşisinde iki sınıftır ve her ikisi de Set arabirimini uygular. TreeSet, Set arabirimini uygulayan bir sınıftır ve benzersiz öğeleri artan sırada depolamak için kullanılır. HashSet, Set arabirimini uygulayan bir sınıftır ve Hashing mekanizmasını kullanarak benzersiz öğeleri saklamak için kullanılır. temel fark TreeSet ve HashSet arasında TreeSet öğeleri artan sırada saklarken HashSet öğeleri artan sırada saklamaz. Hem TreeSet hem de HashSet yalnızca benzersiz öğeleri depolar.
1. Genel Bakış ve Temel Fark
2. TreeSet nedir
3. HashSet nedir
4. TreeSet ve HashSet Arasındaki Benzerlikler
5. Yan Yana Karşılaştırma - Tablo Şeklinde TreeSet ve HashSet
6. Özet
TreeSet sınıfı NavigableSet arabirimini uygular. NavigableSet arabirimi, SortedSet, Set, Collection ve Yinelenebilir arabirimleri hiyerarşik sırada genişletir. TreeSet her zaman artan düzeni korur. Elemanlar B, A, C sırasına eklendiyse, A, B, C olarak depolanırlar. Add (), remove () gibi yöntemler TreeSet nesnesi ile kullanılabilir. Add yöntemi, bir eleman eklemek için kullanılabilir. Remove yöntemi, bir öğeyi koleksiyondan kaldırmak için kullanılır. Bunlar TreeSet ile kullanılabilecek bazı yöntemler.
Şekil 01: TreeSet ile Program
Yukarıdaki programa göre, TreeSet türünde bir nesne oluşturulur. Dize veri öğeleri, add yöntemi kullanılarak bu nesneye eklenir. Girilen veri sırası A, D, A, B, C, D'dir. Yineleyici kullanılarak, saklanan değerler ekrana yazdırılır. Çıktı A, B, C, D'dir. İki A harfi ve iki D harfi olmasına rağmen, çıktı her biri bir A ve bir D görüntüler. Bu nedenle, TreeSet benzersiz öğeleri saklar. Belirli bir ekleme sırası yoktur, ancak çıktıyı incelerken, TreeSet öğesinin artan sırasını koruduğu görülebilir..
HashSet sınıfı, Set Interface'i uygulayan AbstractSet sınıfını genişletir. Set arabirimi, Koleksiyon ve Yinelenebilir arabirimleri hiyerarşik sırayla devralır. HashSet'te, öğelerin artan ve eklenen siparişi koruyacağının garantisi yoktur. Girilen sipariş A, B, C ise değerler C, A, B olarak saklanabilir. Depolama sırası da A, B, C olabilir, ancak eklenen siparişin veya artan siparişin sürdürüleceğine dair bir garanti yoktur..
Şekil 02: HashSet ile Program
Yukarıdaki programa göre HashSet türünde bir nesne yaratılır. Dize veri öğeleri, add yöntemi kullanılarak bu nesneye eklenir. Girilen veri sırası L, R, M, M, R, L'dir. Yineleyici kullanılarak saklanan değerler ekrana yazdırılır. Çıktı R L M'dir. Her birinden iki L, R ve M harfi olmasına rağmen, her birinden yalnızca bir harf görüntülenir. Bu nedenle, HashSet benzersiz öğeleri saklar. Çıktıyı incelerken, artan bir siparişin olmadığı veya eklenen siparişin korunduğu görülebilir.
TreeSet ve HashSet Karşılaştırması | |
TreeSet, koleksiyon hiyerarşisinde benzersiz öğeleri artan sırada depolamak için kullanılan bir sınıftır. | HashSet, toplama hiyerarşisinde Hashing mekanizmasını kullanarak benzersiz öğeleri saklamak için kullanılan bir sınıftır. |
Eleman Depolama | |
TreeSet öğeleri artan sırada saklar. | HashSet öğeleri artan sırada saklamaz. |
Programlamada veri öğelerinin dinamik olarak depolanması gerekir. Java gibi programlama dilleri bu görevi gerçekleştirmek için Koleksiyonlar'ı destekler. Koleksiyon hiyerarşisinde bir takım arayüzler ve sınıflar vardır. TreeSet ve HashSet, Koleksiyon hiyerarşisinde iki sınıftır. Her ikisi de Set arayüzünü uygular. TreeSet, Set arabirimini uygulayan bir sınıftır ve benzersiz öğeleri artan sırada depolamak için kullanılır. HashSet, Set arabirimini uygulayan bir sınıftır ve Hashing mekanizmasını kullanarak benzersiz öğeleri saklamak için kullanılır. TreeSet ve HashSet arasındaki fark, TreeSet öğelerinin artan sırada depolanması, HashSet öğelerin artan sırada saklanmamasıdır. Bu makalede, TreeSet ve HashSet arasındaki fark tartışıldı.
1. “Java'da TreeSet - javatpoint.” JavaPoint. Burada mevcut
2. “Java'da HashSet - Javatpoint.” JavaPoint . Burada mevcut