Liste ve Küme Arasındaki Fark

Temel Fark - Liste vs Ayarlamak
 

Çoğu programlama dili, aynı türden bir veri kümesini saklamak için diziler kullanır. Dizilerin en büyük dezavantajı, dizi boyutu bildirildikten sonra değiştirilememesidir. Programcı dizi boyutunu aşan bir değeri saklamak istiyorsa, yeni bir dizi oluşturmalı ve mevcut öğeleri yeni diziye kopyalamalıdır. Bu durumlarda koleksiyonlar kullanılabilir. Koleksiyon desteği ile eleman eklemek, eleman silmek ve diğer birçok işlemi yapmak mümkündür. Java gibi programlama dillerinde farklı koleksiyon türleri vardır. Liste ve Küme, koleksiyon hiyerarşisinin arayüzleridir. Diğer arayüzler için temel arayüz Koleksiyon'dur. temel fark Liste ve Küme arasında List, aynı öğenin birden çok kez depolanmasını desteklerken Set aynı öğenin birden çok kez depolanmasını desteklemez. Bu nedenle, bir Küme çoğaltmaya izin vermez.

İÇİNDEKİLER

1. Genel Bakış ve Temel Fark
2. Liste Nedir
3. Set nedir
4. Liste ve Kümeler Arasındaki Benzerlikler
5. Yan Yana Karşılaştırma - Listeye Göre Tablo Şeklinde Listeleme
6. Özet

Liste Nedir?

Liste, Koleksiyon arayüzünü genişleten bir arayüzdür. Koleksiyon arayüzünde birkaç yöntem vardır. Add yöntemi, bir öğe eklemenize yardımcı olur. 'Kaldırma yöntemi' bir öğeyi kaldırmaktır. Birden çok öğe eklemek için 'addAll yöntemi' bulunurken, öğeleri koleksiyondan kaldırmak için 'removeAll yöntemi' vardır. İnclude yöntemi Listede belirli bir nesnenin bulunup bulunmadığını bulmaya yardımcı olur. 'İncludeAll', koleksiyonda bir nesne kümesi bulunup bulunmadığını bulmak içindir. Yineleyici yöntemi, listenin öğeleri arasında döngü yapmak için kullanılır. Liste Koleksiyonu genişlettikçe, tüm Koleksiyon yöntemleri Liste'ye aittir. Bu yöntemler dışında, List'in get ve set gibi yöntemleri vardır. Programcı get yöntemini kullanarak belirli bir dizinde bir değer alabilir. Programcı, set yöntemini kullanarak belirli bir dizinde bir değer ayarlayabilir. 'İndexOf', bir öğenin dizinini bulmak için kullanılır.

Listede işlemler konuma göre yapılabilir. Programcı, dizine eklenecek veri öğesini sağlayabilir. Böylece belirli bir dizine eklenecektir. Programcı bir indeks vermezse, eleman Listenin sonuna eklenir. Ayrıca eklenen siparişi korur. Eleman 1 eklenir ve sonra eleman2 eklenirse, eleman1 eleman2'den önce olur.

Figure 01: Liste ve Küme

ArrayList, LinkedList, Vector, List'i uygulayan bazı sınıflardır. ArrayList'te bir öğeye erişmek hızlıdır, ancak ekleme ve silme daha düşüktür. ArrayList iş parçacığı için güvenli değildir. Aynı ArrayList'e birden çok iş parçacığından erişmek aynı sonucu vermeyebilir. LinkedList'te, öğeler hem ileriye hem de geriye doğru bağlanır. LinkedList kullanarak eleman eklemek ve silmek ArrayList'ten daha hızlıdır. LinkedList, List ve Queue Both öğesini uygular. Vektör ArrayList'e benzer, ancak tüm yöntemler senkronize olduğu için lastik sırtı güvenlidir.

Set Nedir?

Set, Koleksiyon arayüzünü genişleten bir arayüzdür. Set arabirimi Koleksiyonu genişlettikçe, tüm Koleksiyon yöntemleri de Set'e aittir. Bir Küme yineleme değerlerini desteklemez. Bu nedenle, programcı aynı öğeyi iki kez saklayamaz. Benzersiz bir eleman setini korur. SortedSet arabirimi, Set arabirimini genişletir. SortedSet öğeleri sıralı olarak tutar. NavigableSet arayüzü SortedSet'i genişletir. NavigableSet, alçak, zemin, tavan vb..

HashSet, LinkedHashSet ve TreeSet, Set arabirimini uygulayan bazı sınıflardır. HashSet Set arayüzü uygular. Girilen siparişi korumaz. Değerler a, x, b olarak eklenirse, x, a, b olarak saklanabilir. LinkedSet eklenen siparişi korur. Elemanlar a, x, b sırasıyla eklenirse, depolama sırası a, x, b olacaktır. TreeSet Set ve NavigableSet'i uygular. Ekleme sırasını korumaz, ancak öğeleri sıralı sırada depolar. Girilen sıra a, c, b ise, elemanlar a, b, c olarak saklanır. Tüm HashSet, LinkedHashSet ve TreeSet öğelerinin yinelenen öğeleri olmayacak.

Liste ve Küme Arasındaki Benzerlikler Nelerdir??

  • Hem Liste hem de Set arayüzleri Koleksiyon arayüzünü genişletir.
  • Öğe ekleme, kaldırma gibi Liste ve Küme destek işlemleri.

Liste ve Küme Arasındaki Fark Nedir??

Liste vs Set

Liste Arabirimi, Koleksiyonun dizine dayalı ekleme, silme gibi işlemleri gerçekleştirme yöntemlerini içeren alt arabirimidir. Set Interface, benzersiz öğeleri korurken ekleme, öğeleri silme gibi işlemleri gerçekleştirmek için yöntemler içeren Koleksiyonun bir alt arabirimidir.
 Sınıflar
ArrayList, Vector ve LinkedList, Liste arabirimini uygulayan sınıflardır. HashSet, LinkedHashSet ve TreeSet, Set arabirimini uygulayan sınıflardır.
Öğe Çoğaltma
Liste, öğelerin kopyalanmasını destekler. Set, öğelerin çoğaltılmasını desteklemez. Öğeler benzersizdir.

özet - Liste vs Ayarlamak

Koleksiyonlar, öğeleri dinamik olarak depolamak için kullanılır. Java gibi programlama dilleri Koleksiyon arabirimi sağlar. Liste ve Küme, Koleksiyon arabirimine ait iki arabirimdir. Her iki arabirim de Koleksiyonu genişletir. Bu makalede Liste ve Küme arasındaki fark tartışılmıştır. Liste ve Küm arasındaki en önemli fark, List'in aynı öğeyi birden çok kez saklamayı desteklemesidir; Set her zaman benzersiz öğeleri korur.

Referans:

1. Nokta, Öğreticiler. “Java Koleksiyonları.”, Öğreticiler Noktası, 8 Ocak 2018. Buradan erişebilirsiniz