Net platformasi bilan tanishish clr, cts va cls


Umumlashtirish va to'plamlar


Download 428.24 Kb.
bet6/18
Sana07.05.2023
Hajmi428.24 Kb.
#1437478
1   2   3   4   5   6   7   8   9   ...   18
Bog'liq
C# методичка

Umumlashtirish va to'plamlar

Umumlashtirilgan turlar mavzusida biz allaqachon umumlashtirish haqida gaplashdik: umumlashtirilgan sinflarni qanday yaratish va ulardan foydalanish, universal parametrning roli T. Umumlashtirilgan to'plamlar bir xil umumlashtirilgan sinflardir. Va yana, ularni jamoat bo'lmagan to'plamlardan foydalanish bir xil afzalliklarga ega: unumdorlikni oshirish (ob'ektni qadoqlash va ochish uchun vaqt sarflashning hojati yo'q) va standart xavfsizlikni oshirish.


Umumiy to'plamlar sinflari nomlar maydonida joylashgan System.Collections.Generic. To'plamlarning funktsional imkoniyatlari, asosan, umumlashtirilgan interfeyslarda tasvirlangan.
Faqat umumlashtirilgan to'plamlarning interfeyslari umumlashtirilmagan egizaklardan nafaqat universal parametr mavjudligi bilan farq qiladi T, lekin ayni paytda funksionallikning o'zi. Umumiy to'plamlarning asosiy interfeyslarini ko'rib chiqing:
IEnumerable : usulni belgilaydi GetEnumerator, uning yordamida siz har qanday to'plamning elementlarini olishingiz mumkin
. Ushbu interfeysni amalga oshirish sizga tsikl yordamida to'plam elementlarini saralashga imkon beradi foreach
IEnumerator : keyinchalik to'plam tarkibini o'z navbatida olish usullarini aniqlaydi
ICollection : barcha umumlashtirilgan to'plamlar uchun bir qator umumiy xususiyatlar va usullarni taqdim etadi (masalan, usullar CopyTo, Add, Remove, Contains, mulk Count)
IList : ketma-ket ro'yxatlarni yaratish uchun funksionallikni ta'minlaydi
IComparer : usulni belgilaydi Compare bir xil turdagi ikkita ob'ektni taqqoslash uchun
IDictionary : ob'ektlarni kalit-qiymat juftlari sifatida saqlashi kerak bo'lgan to'plamning xatti-harakatlarini belgilaydi: har bir ob'ekt uchun parametrda ko'rsatilgan noyob turdagi kalit aniqlanadi TKey va bu kalit parametrda ko'rsatilgan turga ega bo'lgan ma'lum bir qiymatga mos keladi TValue
IEqualityComparer : bir xil turdagi ikkita ob'ektni tenglik uchun taqqoslash usullarini belgilaydi
Ushbu interfeyslar nomlar maydonida quyidagi to'plam sinflari tomonidan amalga oshiriladi System.Collections.Generic:
List : ketma-ket ro'yxatni ifodalovchi sinf. Interfeyslarni amalga oshiradi IList < T>, ICollection, IEnumerable
Dictionary : "kalit-qiymat" juft to'plamlarini saqlaydigan to'plam sinfi. Interfeyslarni amalga oshiradi ICollection, IEnumerable, IDictionary
LinkedList : ikki bog'langan ro'yxat sinfi. Icollection interfeyslarini amalga oshiradi va IEnumerable
Queue : algoritm bo'yicha ishlaydigan ob'ektlarning navbat sinfi FIFO("birinchi kirdi-birinchi chiqdi"). Interfeyslarni amalga oshiradi ICollection, IEnumerable
SortedSet : bir xil turdagi ob'ektlarning saralangan to'plami sinfi. Interfeyslarni amalga oshiradi ICollection, ISet, IEnumerable
SortedList : kalit bo'yicha tartiblangan kalit-qiymat juftlari to'plamlarini saqlaydigan to'plam sinfi. Interfeyslarni amalga oshiradi ICollection, IEnumerable, IDictionary



Download 428.24 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   18




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling