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>.