.NET Uzbekistan
  • .NET Uzbekistan
  • C# / .NET
    • .NET ga xush kelibsiz
    • .NET bilan bog'liq mavhumliklardan qochish
    • .NET asoslari
      • MSIL
      • Memory Management
        • Stack & Heap
      • CLR
    • Basics
      • Starter (boshlang'ich)
        • Java vs C#
        • C# Tarixi
        • Kirish
        • Visual Studio 2019
        • O'zgaruvchilar
        • Ma'lumot turlari
        • Operatorlar
        • Kalit so'zlar
        • ReadLine
        • If-else
        • Switch
        • Math sinfi
        • For sikl operatori
        • While sikl operatori
        • Do-While sikl operatori
        • Foreach sikl operatori
        • Break
        • Continue
        • Goto
        • Kommentlar
      • Essential (muhim)
        • Funksiya
        • Funksiyani qiymat orqali chaqirish
        • Funksiyada Ref kalit so'zidan foydalanish
        • Funksiyada Out parametri
        • Massiv
        • Funksiyalarda massivdan foydalanish
        • Ko'p o'lchamli massiv
        • Parametrlar
        • Array sinfi
        • CMD argumentlari
        • Obyekt va Class lar
        • Konstruktor
        • Obyektni ishga tushiruvchilar
        • Destructor
        • this
        • static
        • Struct
        • Enum
        • Property va Field lar
        • Vorislik
        • Overload (Qayta yuklash)
        • Override (Qayta yozish)
        • Base
        • Polimorfizm
        • Sealed
        • Interface
        • Modifikatorlarga ruxsat berish
        • Inkapsulatsiya
        • Abstrakt class va funksiyalar
        • String
        • StringBuilder
        • String Intern Pool
        • Exception Handling
        • try/catch
        • finally
      • Professional
        • To'plamlar
          • List
          • ArrayList
          • LinkedList
          • SortedList
          • Dictionary
          • HashTable
          • Stack
          • Queue
        • Tuple
        • ValueTuple
        • Delegatlar
          • Func delegati
          • Action delegati
          • Predicate delegati
          • Anonim metodlar
        • Hodisalar
        • Extension metodlar
        • Stream I/O
          • StreamWriter
          • StreamReader
          • MemoryStream
        • File va Directory
          • FileInfo
          • DirectoryInfo
        • MultiThread va Parallel dasturlash
        • Asinxron dasturlash
        • XML Document bilan ishlash
    • LINQ asoslari
      • Average
      • LINQ qanday ishlaydi?
      • LINQ query yozish usullari
      • IEnumerable va IQuerable
      • LINQ operatorlari
      • Select
      • SelectMany
      • Filterlash operatorlari
      • Where
      • OfType
      • Saralash operatorlari
      • OrderBy va OrderByDescending
      • ThenBy va ThenByDescending
      • Reverse
      • Miqdor operatorlari
        • All
        • Any
        • Contains
        • Min
        • Max
      • Set operatsiyasi
        • Distinct
        • Except
        • Intersect
        • Union
      • Bo'lim operatorlari
        • Take
        • TakeWhile
        • Skip
        • SkipWhile
      • Join operatorlari
        • Inner Join
        • Group Join
        • Left Join
      • Element operatsiyalari
        • ElementAt
        • First va FirstOrDefault
        • Last va LastOrDefault
        • Single va SingleOrDefault
    • ORM
      • ADO.NET
      • Dapper
      • Entity Framework
        • Entity Framework Approaches(usullar)
          • Model First Approach
          • Database First Approach
          • Code First Approach
        • Query yozish usullari(Entity Framework)
          • LINQ to SQL
          • Entity SQL
          • Native SQL
        • Entity Framework Core
    • Qo'shimcha sinflar
      • System.Text
        • Encoding
      • System
        • Int32
        • Random
        • DateTime
        • TimeSpan
      • System.Reflection
    • .NET Dasturchi
      • Clean Arxitektura
        • Clean Kod
        • Dizayn Tamoyillari
          • SOLID
            • Yagona Mas'uliyat Tamoyili(SRP)
            • Ochiq Yopiq Tamoyili(O/CP)
            • Liskovning Almashtirish Tamoyili(LSP)
            • Interfeysga ajratish tamoyili(ISP)
            • Qaramlik Inversiya Tamoyili(DIP)
          • DRY
          • KISS
          • YAGNI
        • Dizayn Patternlar
          • Factory Method
          • Abstract Factory
          • Builder
          • Prototype
          • Singleton
          • Adapter
          • Bridge
          • Composite
          • Decorator
          • Façade
          • Flyweight
          • Proxy
          • Chain of Responsibility
          • Command
          • Interpreter
          • Iterator
          • Mediator
          • Memento
          • Observer
          • State
          • Strategy
          • Visitor
          • Template Method
      • Git / Github
      • Muhim terminlar
      • Postman
      • CLI
        • CMD savodxonligi
      • API dan foydalanish
      • WCF
      • Refactor .NET application
      • Unit Test
      • TDD
      • TFS
    • Desktop Dasturlash
      • WPF (Windows Presentation Foundation)
        • WPF ga kirish
          • WPF ning ustunliklari
          • WPF da dastur
          • WPF arxitetkturasi
          • Klasslar iorarxiyasi
        • XAML
          • XAML asoslari
          • XAML orqasida kod
          • XAML xususiyatlari
          • XAML belgilash kengaytmalari
          • Biriktirilgan xususiyatlar
          • XAML da hodisalar
          • XAML da nomlar fazosi
        • WPF ilovasini tuzish
          • Komponovka
          • StackPanel
          • WrapPanel
          • DockPanel
          • Grid
          • GridSplitter
          • Umumiy o'lchamli guruhlar
          • Canvas
          • LnkCanvas
          • Komponovkaga misollar
        • Bog'liqlik xususiyatlari (Dependency property)
          • Bog'liqlik xususiyatlari
          • Bog'liqlik xususiyatlarining roli
          • Bog'liqlik xususiyatlarining aniqlanishi
          • Bog'liqlik xususiyatlarini ishlatish
        • Marshrutlangan hodisalar (Routed Events)
          • Routed Events
          • Bubble Events
          • Direct Events
          • Tunneling Events
        • Qo'shimcha ma'lumotlar
          • WPF ga kirish
          • WinForm va WPF
          • Salom WPF
          • XAML nima?
          • Hodisalar
          • WPF oynasi
          • App.xaml
          • Resurslar
          • Argument berish
          • Son va Vaqtni Formatlash
          • TextBlock elementi – Inline formatlash
          • Label elementi
          • Textbox elementi
      • WinForm (Windows Form)
        • 1-dars. Forma yaratish
        • 2-dars. Muhit bilan tanishish
        • 3-dars. Formaga komponentalar joylashtirish
        • 4-dars. Xodisa(Event)larni boshqarish
        • 5-dars. Dasturni ishga tushurish
      • UWP (Universal Windows Platform)
      • Xamarin
    • Web Dasturlash
      • ASP.NET Core asoslari
        • ASP.NET Core haqida
        • Loyihalar turlari
        • ASP.NET Core dasturlarini hosting qilish
        • Middleware tushunchasi
        • Middleware bilan amaliyot
        • Statik fayllar bilan ishlash
        • Dependency Injection
        • Developer Exception Page
      • ASP.NET Core Web API
        • Web API ga kirish
        • Swagger nima?
        • Http metodlar
        • ActionResult
        • CORs
        • Security (JWT)
        • Swagger ni sozlash
        • Filter va atributlar
        • Configuration va middleware
        • Logging
        • Mapping (AutoMapper)
        • SignalR
        • Keshlash
      • ASP.NET Core MVC
        • MVC nima?
        • ASP.NET Core MVC haqida qisqacha
        • Loyiha strukturasi
        • Controller
        • View
        • Model
        • View larni aniqlash yo'llari
        • Controller dan view ga ma'lumot uzatish
        • ViewBag va ViewData
        • Strongly typed View
        • Layout view haqida
        • ViewStart va ViewImports fayllari haqida
        • Marshrutizatsiya (routing)
        • Tag Helpers
          • Anchor Tag Helper
          • Image Tag Helper
          • Environment Tag Helper
        • Tekshiruv qoidalari (Validation rules)
      • MicroServices
    • Mobile Dasturlash
      • Xamarin.Android
      • Xamarin.IOS
      • Xamarin.Forms
    • Game Dasturlash
      • Unity Starter (boshlang'ich)
      • Unity Advanced (rivojlangan)
    • Internet of Things
    • Machine Learning
    • Telegram Bot
      • Kirish
        • Telegram bot bilan tanishuv
        • ASP.NET Core da birinchi telegram bot
      • Starter
        • Xabar turlari va xabar yuborish
          • Matnli xabarlar bilan ishlash
          • Rasm & Sticker
          • Audio & voice
          • Video & Video Note
          • Dokument fayllar
          • Polls
          • Contact , Location, Venue
          • Album(Media Group)
      • Essential
        • Reply - Markup
          • ReplyKeyboardMarkup, KeyboardButton
          • InlineKeyboardMarkup, InlineKeyboardButton
      • Advanced
        • Deployment
    • Class Library
    • Intervyu savollari
      • C# / .NET asoslari
  • Database
    • MS SQL Server
      • SQL Server sintaksisi
      • Ma'lumot turlari
      • Select
    • PostgreSQL
      • Basic
        • Kirish
        • PostgreSQL tarixi
        • Muhitni sozlash (PgAdmin)
        • Sistaksis
        • Ma'lumot turlari
        • Create Database
        • Select Database
        • Drop Database
        • Create Table
        • Drop Table
        • Scheme
        • Insert so'rovi
        • Select so'rovi
        • Operatorlar
        • Ifodalar
        • Where
        • Where
        • And va Or
        • Update so'rovi
        • Delete so'rovi
        • Like
        • Limit
        • Order By
        • With
        • Having
        • Distinct
      • Advance
        • Constraint (cheklov) lar
        • Join lar
          • Cross join
          • Inner join
          • Left join
          • Right join
          • Full join
        • Union
  • Roadmap
    • Roadmap for .NET developers
    • Roadmap for Azure developers
Powered by GitBook
On this page
  • 1-bosqich **
  • 2-bosqich
  • 3-bosqich Element qo`shamiz 2 xil usulda :
  • SortedList dan elementlarni o`chirish
  • Clear() Remove() RemoveAt()
  • RemoveAt()
  • Element bor yoki yo`qligini tekshirish
  • Contains(), ContainsKey(), ContainsValue()
  • ContainsValue()

Was this helpful?

  1. C# / .NET
  2. Basics
  3. Professional
  4. To'plamlar

SortedList

Tolibjonov Abdulloh

SortedList ham xuddi Listga o`xshash to`plam. Elementlarni qo`shish, o`chirish, saralash kabi funksiyalar SortedListda ham mavjud. Ammo Listdan farqi elementlar kalit/qiymat tarzida bo`ladi. Bu qanday bo`ladi deysizmi? Har bir element qiymatini o`z kaliti bo`ladi.

1

2

3

4

5

Muhammad Karim

Xondamir

Jasur

Farrukh

Abdulloh

Masalan bu rasmda,

1 – kalitda Muhammad Karim

2 – kalitda Xondamir

3 – kalitda Jasur

4 – kalitda Farrukh

5 – kalitda Abdulloh turadi degani.

MUHIM QOIDALAR !

  • SortedListda elementga nafaqat indeksi orqali balki, kaliti orqali ham kirish mumkin

  • Kalit null qiymat qabul qilmaydi, ammo element null qiymatni qabul qiladi.

  • Bir xil qiymatli elementlar bo`lishi mumkin, ammo ularning kalitlari bir xil bo`lmaydi

  • Kalitlarni faqat sonlar emas balki ixtiyoriy tipda ham berishingiz mumkin, faqatgina kalitlarning hammasi bir xil tipda bo`lishi kerak, aks holda kompilyator ishlamaydi

SortedListni qanday yaratamiz ?

1-bosqich **

Kod yuqorisiga using System.Collections; ni yozib qo`ying

2-bosqich

Berilgan sintaksis bo`yicha SortedList yaratamiz

SortedList list_nomi = new SortedList();

list_nomi degan joyga o`zingiz ixtiyoriy nom berishingiz mumkin !

3-bosqich Element qo`shamiz 2 xil usulda :

1) SortedListni yaratiboq elementlarni yoniga yozib qo`ying (xuddi massivdek)

SortedList list = new SortedList() 
{ 
    {1, "Abdullajon" }, 

    {2, "Shum bola" },

    {3, "Sariq dev" }  
};

Ahamiyat bersangiz elementlar ham jingalak qavs ichida yoziladi, sababi kompilyator kaliti qaysi qiymatga tegishli ekanini aniqlashda xato qilmasligi uchun.

2) Add() funksiyasi yordamida qo`shish mumkin

SortedList list = new SortedList();
list.Add(1, "Abdullajon");
list.Add(2, "Shum bola");
list.Add(3, "Sariq dev");

4-bosqich

Elementlarga kirish GetKey() va GetByIndex()

SortedList list = new SortedList();
list.Add(1, "Abdullajon");
list.Add(2, "Shum bola");
list.Add(3, "Sariq dev");

for(int i = 0; i < list.Count; i++)
{
    Console.WriteLine($"{list.GetKey(i)} - {list.GetByIndex(i)}");
}

Natija:

GetKey(i) – i element turgan indeksi, indeksiga qarab elementning kalitini aniqlab beradi. GetByIndex(i) – i indeksiga qarab element qiymatini aniqlab beradi

SortedList list = new SortedList();
list.Add(1, "Abdullajon");
list.Add(2, "Shum bola");
list.Add(3, "Sariq dev");

string x = (string)list[2];

Console.WriteLine(x);

Natija:

SortedList list = new SortedList();

list.Add(1, "Abdullajon"); // pair
list.Add(2, "Shum bola"); // pair
list.Add(3, "Sariq dev");// pair

foreach(DictionaryEntry pair in list)
{
    Console.WriteLine($"{pair.Key} - {pair.Value}");
}

Natija:

SortedListga misollar

using System;
using System.Collections;

namespace ConsoleApp11
{
    class Program
    {
        static void Main(string[] args)
        {
            SortedList list = new SortedList();

            list.Add(1, "Lambo");
            list.Add(2, "Mercedes"); 
            list.Add(3, "BMW");
            list.Add(4, "RoLLs");
            list.Add(5, "BentLey");

            foreach (DictionaryEntry pair in list)
            {
                Console.WriteLine($"{pair.Key} - {pair.Value}");
            }
        }
    }
}

Natija:

SortedList dan elementlarni o`chirish

Clear() Remove() RemoveAt()

Clear() - funksiyasi to'plamdagi barcha elementlarni o'chirib tashlaydi

SortedList list = new SortedList();

list.Add(1, "Lambo");
list.Add(2, "Mercedes"); 
list.Add(3, "BMW");
list.Add(4, "RoLLs");
list.Add(5, "BentLey");

list.Clear();

foreach (DictionaryEntry pair in list)
{
    Console.WriteLine($"{pair.Key} - {pair.Value}");
}

Natija:

Remove(T) – T-da turgan elementni o`chiradi, T-indeksda turgan elementni emas.

SortedList list = new SortedList();

list.Add(1, "Lambo");
list.Add(2, "Mercedes"); 
list.Add(3, "BMW");
list.Add(4, "RoLLs");
list.Add(5, "BentLey");

list.Remove(3);// 3-elementni o`chiradi, 3-indeksdagini emas

foreach (DictionaryEntry pair in list)
{
    Console.WriteLine($"{pair.Key} - {pair.Value}");
}

Natija:

RemoveAt()

SortedList list = new SortedList();

list.Add(1, "Lambo");
list.Add(2, "Mercedes"); 
list.Add(3, "BMW");
list.Add(4, "RoLLs");
list.Add(5, "BentLey");

list.RemoveAt(3);

foreach (DictionaryEntry pair in list)
{
    Console.WriteLine($"{pair.Key} - {pair.Value}");
}

Natija:

Eslatma! Remove() bilan RemoveAt() funksiyalarida qaysi element o`chib ketganiga ahamiyat bering ular bir xil emas.

Element bor yoki yo`qligini tekshirish

Contains(), ContainsKey(), ContainsValue()

Contains() va ContainsKey() funksiyalari bir xil

SortedList list = new SortedList();

list.Add(1, "Lambo");
list.Add(2, "Mercedes"); 
list.Add(3, "BMW");
list.Add(4, "RoLLs");
list.Add(5, "BentLey");

Console.WriteLine(list.Contains(3));//kaliti 3

Natija:

Bu funksiya kaliti 3ga teng bo'lgan element bor yoki yo'qligini tekshirib beradi. Bor bo'lsa True, bo'lmasa False.

ContainsValue()

SortedList list = new SortedList();

list.Add(1, "Lambo");
list.Add(2, "Mercedes"); 
list.Add(3, "BMW");
list.Add(4, "RoLLs");
list.Add(5, "BentLey");

Console.WriteLine(list.ContainsValue("Porsche"));

Natija:

Bu funksiya kalitni emas, berilgan qiymat bor yoki yo'qligini tekshiradi. Listda Porsche yo'q edi. Shu sababli False.

PreviousLinkedListNextDictionary

Last updated 3 years ago

Was this helpful?