Sobes.tech
Junior — Middle

Farklı koleksiyon arayüzü türleri arasında ne fark vardır?

sobes.tech yapay zeka

AI'dan gelen yanıt

C#'ta koleksiyon arayüzleri, veri kümeleriyle çalışma konusunda farklı sözleşmeler tanımlar ve bunların farkı işlevsellik ve amaçlarına göre değişir:

  • IEnumerable<T> — foreach kullanarak koleksiyonu dolaşmak için temel arayüz. Sadece öğeleri tek tek okumaya izin verir.
  • ICollection<T> — IEnumerable<T>'yi genişletir, koleksiyonu değiştirmek için yöntemler (Add, Remove) ekler, Count ve IsReadOnly özellikleri içerir.
  • IList<T> — ICollection<T>'yi genişletir, indeksle erişim için indeksleyici ekler, indeksle ekleme ve silme yöntemleri sağlar.
  • IDictionary<TKey, TValue> — anahtar-değer çiftleri koleksiyonunu temsil eder, öğelere anahtar ile erişilir.

Dolayısıyla, arayüz seçimi gereken işlemlere bağlıdır: sadece yineleme gerekiyorsa — IEnumerable<T>, değiştirme ve sayma gerekiyorsa — ICollection<T>, indeksle erişim gerekiyorsa — IList<T>, anahtarlarla çalışma — IDictionary<TKey, TValue>.