Junior — Middle
Turli to'plam interfeysi turlari o'rtasida qanday farq bor?
sobes.tech AI
AIdan javob
C# da kolleksiya interfeyslari ma'lumotlar to'plami bilan ishlash uchun turli shartlarni belgilaydi va ularning farqi funksionallik va maqsadga ko'ra:
- IEnumerable<T> — foreach yordamida kolleksiyani yuritish uchun asosiy interfeys. Faqat elementlarni birma-bir o'qishga imkon beradi.
- ICollection<T> — IEnumerable<T> ni kengaytiradi, kolleksiyani o'zgartirish uchun metodlar (Add, Remove), Count va IsReadOnly xususiyatlarini qo'shadi.
- IList<T> — ICollection<T> ni kengaytiradi, indeks bo'yicha kirish uchun indeksator qo'shadi, indeks bo'yicha qo'shish va o'chirish metodlarini taqdim etadi.
- IDictionary<TKey, TValue> — kalit-qiymat juftliklaridan iborat kolleksiyani ifodalaydi, elementlarga kirish kalit orqali amalga oshiriladi.
Shunday qilib, interfeys tanlovi talab qilingan operatsiyalarga bog'liq: faqat yuritish uchun — IEnumerable<T>, o'zgartirish va hisoblash uchun — ICollection<T>, indeks bo'yicha kirish uchun — IList<T>, kalitlar bilan ishlash uchun — IDictionary<TKey, TValue>.