Sobes.tech
Junior — Middle

Kolleksiya interfeysinin müxtəlif növləri arasında nə fərq var?

sobes.tech Süni İntellekt

AI-dan cavab

C# dilində kolleksiya interfeysləri məlumat dəstləri ilə işləmək üçün müxtəlif müqavilələr müəyyən edir və onların fərqi funksionallıq və məqsədə görə dəyişir:

  • IEnumerable<T> — foreach istifadə edərək kolleksiyanı gəzmək üçün əsas interfeys. Yalnız elementləri tək-tək oxumağa imkan verir.
  • ICollection<T> — IEnumerable<T>-ni genişləndirir, kolleksiyanı dəyişdirmək üçün metodlar (Add, Remove), Count və IsReadOnly xüsusiyyətləri əlavə edir.
  • IList<T> — ICollection<T>-ni genişləndirir, indekslə giriş üçün indeksləyici əlavə edir, indekslə əlavə və silmə metodları təmin edir.
  • IDictionary<TKey, TValue> — açar-dəyər cütlüklərindən ibarət kolleksiyanı təmsil edir, elementlərə giriş açar vasitəsilə həyata keçirilir.

Beləliklə, interfeys seçimi tələb olunan əməliyyatlara bağlıdır: yalnız iterasiya üçün — IEnumerable<T>, dəyişiklik və sayma üçün — ICollection<T>, indekslə giriş üçün — IList<T>, açarlarla işləmək üçün — IDictionary<TKey, TValue>.