C# To’plamlar (Kolleksiyalar)?



Download 0,69 Mb.
Sana18.04.2022
Hajmi0,69 Mb.
#560183
Bog'liq
Презентация1

C# To’plamlar (Kolleksiyalar)?

C# To’plamlar (Kolleksiyalar)?

C# da bir xil turdagi ma'lumotlar to'plamini saqlash uchun massivlardan foydalanishingiz mumkin. Ammo ular bilan ishlash har doim ham qulay emas, chunki ular qat'iy o'lchamga ega va ko'pincha massivga qanday o'lcham kerakligini taxmin qilish qiyin.

Ushbu muammolarni hal qilish uchun C# da to'plamlar mavjud. Ular sizning o'lchamingizni dinamik ravishda o'zgartirishga imkon beradi. Ular shuningdek, ulardan ba'zilari ro'yxat, xesh-jadval, stek, navbat kabi standart ma'lumotlar tuzilmalarini tayyor amalga oshirishlari bilan ham qulaydir.

Barcha to'plamlar bir nechta nom maydonlarida joylashgan:

  • System.To'plamlar oddiy, umumiy bo'lmagan to'plamlardir.
  • System.Collections.Generic - umumiy to'plamlar.
  • System.Collections.Ixtisoslashgan - Maxsus to'plamlar.
  • System.Collections.Concurrent - ko'p oqimli muhitda ishlash uchun to'plamlar.

System. Collections;

  • System. Collections;
  • Tizim.Toʻplamlar.Umumiy.
  • Birinchisi , System.Collections Object tipidagi ob'ektlarni saqlash uchun ma'lumotlar tuzilmalarini taqdim etadi . Ushbu yechim ikkita asosiy muammoga ega - ishlash va turdagi xavfsizlik. Hozirda System.Collections dan sinf ob'ektlaridan foydalanish tavsiya etilmaydi . 
  • Yuqoridagi muammolarni hal qilish uchun Microsoft umumiy turlarga ega to'plamlarni ishlab chiqdi (ular generiklar deb ham ataladi), ular System.Collections.Generic nom maydonida joylashgan . Ularning mohiyati shundan iboratki, siz nafaqat List sinfining ob'ektini yaratasiz , balki unda qanday turdagi ob'ektlar saqlanishini ham aniqlaysiz, bu quyidagicha amalga oshiriladi: List , bu erda T int, string, ikki barobar yoki o'z sinfingizdan bir nechtasi. 
  • Ushbu dars doirasida biz umumiy tiplarning xususiyatlariga batafsil to'xtalib o'tmaymiz, hozirda siz ularni haqiqiy ma'lumotlar turlari uchun taxalluslar deb hisoblashingiz mumkin

Oldingi maqolalardan birida biz C# da massivlarni qanday yaratish bilan tanishgan edik . Shu bilan birga, ibtidoiy ma'lumotlar turlaridan farqli o'laroq, masalan: satrlar, raqamlar, belgilar; massivlar oldindan belgilangan raqamga ega bo'lgan bunday ob'ektlar guruhini qayta ishlashga imkon beradi. Massivlar ma'lum o'lchamdagi to'plam bilan ishlash uchun foydalidir. Ammo ko'pincha biz qancha elementlarni to'plashimiz va ishlatishimiz kerakligini bilmaymiz. Bunday vaziyatlarda biz kollektsiyalardan foydalanganimiz ma'qul. Bugungi maqolada biz to'plam turi, aniqrog'i C# da ro'yxat bilan tanishamiz .

  • Oldingi maqolalardan birida biz C# da massivlarni qanday yaratish bilan tanishgan edik . Shu bilan birga, ibtidoiy ma'lumotlar turlaridan farqli o'laroq, masalan: satrlar, raqamlar, belgilar; massivlar oldindan belgilangan raqamga ega bo'lgan bunday ob'ektlar guruhini qayta ishlashga imkon beradi. Massivlar ma'lum o'lchamdagi to'plam bilan ishlash uchun foydalidir. Ammo ko'pincha biz qancha elementlarni to'plashimiz va ishlatishimiz kerakligini bilmaymiz. Bunday vaziyatlarda biz kollektsiyalardan foydalanganimiz ma'qul. Bugungi maqolada biz to'plam turi, aniqrog'i C# da ro'yxat bilan tanishamiz .
  • Ismlar maydoni
  • To'plamlar bilan ishlash uchun faylimiz boshiga System.Collections.Generic nom maydonini kiritishimiz kerak
  • using System.Collections.Generic;
  • Kalleksiya metodiga misolar

List years = new List { 2020, 2019, 2018, 2017, 2016 }; //foreach foreach(var year in years) { Console.WriteLine(year.ToString()); } var day = daysOfTheWeek[3]; //"Thu" // Add() List daysOfTheWeek = new List (); daysOfTheWeek.Add("Sun"); daysOfTheWeek.Add("Mon"); daysOfTheWeek.Add("Tue"); daysOfTheWeek.Add("Wed"); daysOfTheWeek.Add("Thu"); daysOfTheWeek.Add("Fri"); daysOfTheWeek.Add("Sat");

  • List years = new List { 2020, 2019, 2018, 2017, 2016 }; //foreach foreach(var year in years) { Console.WriteLine(year.ToString()); } var day = daysOfTheWeek[3]; //"Thu" // Add() List daysOfTheWeek = new List (); daysOfTheWeek.Add("Sun"); daysOfTheWeek.Add("Mon"); daysOfTheWeek.Add("Tue"); daysOfTheWeek.Add("Wed"); daysOfTheWeek.Add("Thu"); daysOfTheWeek.Add("Fri"); daysOfTheWeek.Add("Sat");

Ro`yhat kalleksiya misol

  • Ro`yhat kalleksiya misol
  • List names = new List(); names.Add("test name"); names.Add("second name"); names.Add("third name") bool exists = names.Contains("test name"); Console.WriteLine(exists); // True List aFewNames = names.GetRange(0, 2); names.Insert(2, "second and a half name"); int index = names.IndexOf("test name"); Console.WriteLine(index); // 0 names.Remove("test name"); names.Clear();

To`plamlar yani kalleksiyalar bilan ishlash bizga dasturlash oladida yangi hodisa va boshqa narsalarni mukamalroq ko`rishni o`rgatadi

  • To`plamlar yani kalleksiyalar bilan ishlash bizga dasturlash oladida yangi hodisa va boshqa narsalarni mukamalroq ko`rishni o`rgatadi
  • Zero dasturlash o`zi abstrak narsa

Etiboringiz uchun rahmat


Download 0,69 Mb.

Do'stlaringiz bilan baham:




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish