Mavzu: Ma’lumotlarni saqlovchi kolleksiyalardan foydalanish (C# tilida)


Clear : stekni tozalaydi O'z ichiga oladi


Download 351.29 Kb.
bet8/10
Sana15.06.2023
Hajmi351.29 Kb.
#1487438
1   2   3   4   5   6   7   8   9   10
Bog'liq
Iskandarov Otaxon Kurs ishi

Clear : stekni tozalaydi

  • O'z ichiga oladi : element stekda yoki yo'qligini tekshiradi va agar mavjud bo'lsa, true qiymatini qaytaradi.

  • Push : stekning yuqori qismidagi stekga element qo‘shadi

  • Pop : ochiladi va stekdan birinchi elementni qaytaradi

  • Peek : shunchaki stekdan birinchi elementni olib tashlamasdan qaytaradi

    Keling, bir misolni ko'rib chiqaylik:
    var people = new Stack();
    odamlar.Push("Tom");
    // odamlar = { Tom }
    odamlar.Push("Sam");
    // odamlar = { Sem, Tom }
    odamlar.Push("Bob");
    // odamlar = {Bob, Sem, Tom}

    // stekning birinchi elementini olib tashlamasdan oling


    string headPerson = people.Peek();
    Console.WriteLine(headPerson); // Bob

    string person1 = people.Pop();


    // odamlar = { Sem, Tom }
    Console.WriteLine(1-shaxs); // Bob

    string person2 = people.Pop();


    // odamlar = { Tom }
    Console.WriteLine(shaxs2); // Sam

    string person3 = people.Pop();


    // odamlar = {}
    Console.WriteLine(shaxs3); // Tom
    Stackning ishi quyidagi rasm bilan ifodalanishi mumkin:

    Shuni ta'kidlash kerakki, agar Peek yoki Pop usullaridan foydalangan holda biz bo'sh bo'lgan stekning birinchi elementini olishga harakat qilsak, dastur istisno qiladi. Shunga ko'ra, elementni olishdan oldin biz stekdagi elementlar sonini tekshirishimiz mumkin:
    agar (odamlar soni > 0)
    {
    var person = people.Peek();
    odamlar.Pop();
    }

    6.Lug'at to'plami


    Lug'atlar boshqa keng tarqalgan to'plam turidir. Lug'at kalit-qiymat juftligini ifodalovchi ob'ektlarni saqlaydi. Lug'at sinfi Dictionary ikki xilda yoziladi: K parametri kalit turini, V parametri esa qiymat turini beradi.

    Lug'at yaratish va ishga tushirish


    Lug'at sinfi lug'at yaratish uchun bir qancha konstruktorlarni taqdim etadi. Masalan, biz bo'sh lug'at yaratishimiz mumkin:
    Dictionary people = new Dictionary();
    Bu erda lug'at peopleint qiymatlarini kalit sifatida va satrlarni qiymat sifatida oladi.
    Lug'atni belgilashda uni darhol qiymatlar bilan ishga tushirishingiz mumkin:
    var people = new Dictionary()
    {
    {5, "Tom"},
    {3, "Sam"},
    {11,"Bob"}
    };
    Initsializatsiya paytida initsializator ishlatiladi - konstruktorni chaqirgandan so'ng jingalak qavslarda ob'ektga dastlabki ma'lumotlar uzatiladi. So'z bo'lsa, biz inisializerga elementlar to'plamini o'tkazishimiz mumkin, bu erda har bir element jingalak qavslar ichiga olinadi, masalan:
    {5, "Tom"}
    Har bir element ikkita qiymatni ifodalaydi: birinchi qiymat kalitni, ikkinchi qiymat esa elementning o'zini ifodalaydi. Odamlar lug'atini e'lon qilishda kalitlar turdagi intva qiymatlar turdagi bo'lganligi stringsababli, lug'at elementi avval int raqamini, keyin esa qatorni belgilaydi. Ya'ni, yuqoridagi holatda, element 5 kalitiga ega va qiymat "Tom" dir. Keyin elementning kalitidan element qiymatini olishimiz mumkin.
    Biz ishga tushirishning boshqa usulidan ham foydalanishimiz mumkin:
    var people = new Dictionary()
    {
    [5] = "Tom",
    [6] = "Sam",
    [7] = "Bob"
    };
    Ushbu ishga tushirish usuli bilan kalit kvadrat qavslar ichida ko'rsatiladi va elementning qiymati unga tayinlanadi. Ammo umuman olganda, bu ishga tushirish usuli avvalgisiga teng bo'ladi.
    KeyValuePair
    Shuni ta'kidlash kerakki, lug'atdagi har bir element KeyValuePair strukturasini ifodalaydi , bu erda TKey parametri kalit turini va TValue parametri elementning qiymat turini ifodalaydi. Ushbu tuzilma mos ravishda lug'atdagi elementning kaliti va qiymatini olish uchun ishlatilishi mumkin bo'lgan Keyva xususiyatlarini beradi. ValueLug'at konstruktorining bir versiyasi KeyValuePair ob'ektlari to'plami bilan lug'atni ishga tushirishga imkon beradi:
    var mike = new KeyValuePair(56, "Mayk");
    var xodimlar = new List>() { mike};
    var people = new Dictionary(xodimlar);
    Tur konstruktori KeyValuePairikkita parametrni oladi - element kaliti va uning qiymatlari. Ya'ni, bu holda, bitta shunday element yaratiladi - mikekalit 56 va "Mayk" qiymati bilan. Va bu element xodimlar ro'yxatiga qo'shiladi, keyin esa lug'atni ishga tushiradi.
    Siz ishga tushirishning ikkala usulini birlashtira olasiz:
    var mike = new KeyValuePair(56, "Mayk");
    var xodimlar = new List>() { mike };
    var people = new Dictionary(xodimlar)
    {
    [5] = "Tom",
    [6] = "Sam",
    [7] = "Bob",
    };
    Bunday holda, xalq lug'atida to'rtta element bo'ladi.

    Download 351.29 Kb.

    Do'stlaringiz bilan baham:
  • 1   2   3   4   5   6   7   8   9   10




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