Kolekcje (c.d.) - Klasa List - Kolejka
- Stos
- Słownik
2016-11-17 Metody programowania – 1 W6 2
Klasa List
Poważną niedogodnością tablic jako kolekcji danych jest fakt, że muszą one mieć stały rozmiar. Programista musi wiedzieć z góry ile miejsca powinien zarezerwować na
pomieszczenie wszystkich przetwarzanych danych.
Rozwiązaniem tego problemu jest w C# klasa List - tablica, która dynamicznie zmienia swoją długość.
Klasa ta udostępnia szereg wygodnych w użyciu metod i właściwości – zebrano je w
tabeli 6.1.
Metoda lub właściwość Działanie
Capacity Właściwość – do pobierania i ustawiania liczby elementów, które może zawierać lista
Count Zwraca liczbę aktualnie przechowywanych elementów
Item() Pobiera element o określonym indeksie lub przypisuje do niego wartość
Add() Metoda publiczna – dodaje element do listy
AddRange() Publiczna metoda, która dodaje na koniec listy elementy z ICollection BinarySearch() Wyszukuje binarnie określony element w posortowanej liście
Clear() Usuwa z listy wszystkie elementy
Contains() Określa czy dany element znajduje się na liście
CopyTo() Kopiuje listę do jednowymiarowej tablicy
Exists() Sprawdza czy element znajduje się na liście Find() Zwraca pierwsze wystąpienie elementu na liście FindAll() Zwraca wszystkie dane elementy występujące na liście
GetEnumerator() Zwraca licznik, który umożliwia przechodzenie po elementach listy GetRange() Kopiuje zakres elementów do nowej listy
IndexOf() Zwraca indeks pierwszego wystąpienia danej wartości na liście
Insert() Dodaje element do listy
InsertRange() Dodaje zakres elementów kolekcji do listy
LastIndexOf() Zwraca indeks ostatniego wystąpienia wartości na liście Remove() Usuwa z listy pierwsze wystąpienie określonego elementu z listy
RemoveAt() Usuwa element o podanym indeksie
Metody i właściwości klasy List
2016-11-17 Metody programowania – 1 W6 4
Listing 6.1
2016-11-17 Metody programowania – 1 W6 6
Kolejka
Kolejka jest kolekcją typu FIFO (First-In, First-Out )
Metody i właściwości klasy Queue zebrano w tabeli 6.2.
Metoda lub właściwość Działanie
Count Właściwość publiczna, która zwraca liczbę elementów kolejki
Clear() Usuwa z kolejki wszystkie obiekty
Contains() Sprawdza, czy dany element znajduje się w kolejce
CopyTo() Kopiuje elementy kolejki do istniejącej tablicy jednowymiarowej
Dequeue() Usuwa i zwraca element znajdujący się na początku kolejki
Enqueue() Dodaje obiekt na koniec kolejki
GetEnumerator() Zwraca licznik kolejki
Peek() Zwraca element znajdujący się na początku kolejki, ale go nie usuwa
ToArray() Kopiuje elementy do nowej tablicy
2016-11-17 Metody programowania – 1 W6 8
2016-11-17 Metody programowania – 1 W6 10
2016-11-17 Metody programowania – 1 W6 12
Stos
Stos jest kolekcją typu LIFO (Last-In, First-Out )
Metody i właściwości klasy
Stack
zebrano w tabeli 6.3.Metoda lub właściwość Działanie
Count Właściwość publiczna, która zwraca liczbę elementów stosu
Clear() Usuwa ze stosu wszystkie obiekty
Clone() Tworzy kopię stosu
Contains() Sprawdza, czy dany element znajduje się na stosie
CopyTo() Kopiuje elementy stosu do istniejącej tablicy jednowymiarowej
GetEnumerator() Zwraca licznik stosu
Peek() Zwraca element znajdujący się na szczycie stosu, ale go nie usuwa
Pop() Usuwa i zwraca obiekt ze szczytu stosu
2016-11-17 Metody programowania – 1 W6 14
Listing 6.3
2016-11-17 Metody programowania – 1 W6 16
Słownik
Słownik jest kolekcją, która zawiera wartości powiązane z kluczami.
Klasa słownika udostępniana przez .NET pozwala łączyć dowolny typ klucza (łańcuchy znaków, liczby całkowite, obiekty itp.) z wartościami dowolnego typu.
Właściwości i metody klasy Dictionary pokazano w tabeli 6.4
Metoda lub właściwość Działanie
Count Właściwość publiczna, która zwraca liczbę elementów słownika Clear() Usuwa ze słownika wszystkie obiekty
Item() Mechanizm indeksowania słownika
Keys Publiczna właściwość, która zwraca kolekcję zawierającą klucze słownika Values Publiczna właściwość, która zwraca kolekcję zawierającą wartości
słownika
Add() Dodaje element o określonym kluczu i wartości ContainsKey() Sprawdza, czy dany klucz znajduje się w słowniku ContainsValue() Sprawdza, czy dana wartość znajduje się w słowniku GetEnumerator() Zwraca licznik słownika
2016-11-17 Metody programowania – 1 W6 18