Lista – możliwości wykorzystania listy.
Listy są bardzo podobne do tablic, ale w przeciwieństwie do tablic można zmieniać ich rozmiar. To sprawia, że listy są bardzo przydatne do przechowywania danych, gdy nie wiesz, ile elementów będziesz musiał przechowywać w momencie tworzenia kolekcji.
Lista automatycznie rozszerza się i kurczy w zależności od zawartości. Po utworzeniu obiektu listy w łatwy sposób możemy wstawiać elementy do listy, usuwać wybrane elementy z dowolnego miejsca na liście, podglądać ich zawartość, a nawet przenosić z jednego miejsca w inne miejsce.
Klasa List jest wbudowana w .NET Framework i pozwala robić z obiektami różne rzeczy, także takie, których nie możesz zrobić przy użyciu zwykłej tablicy.
Oto kilka możliwości wykorzystania Listy:
Możesz ją stworzyć.
Musisz określić typ obiektów lub wartości, które lista będzie przechowywała.
Dokonujesz tego za pomocą nawiasów trójkątnych podczas tworzenia listy
przy użyciu słowa kluczowego new.
List<City> citys = new List<City>();
Możesz do niej coś dodać.
Używając metody Add() do której przekazujemy element do dodania. Dodając element do listy dodajesz go zawsze na koniec listy.
City city = new City("Katowice", "SLA", "Polska", 4524091, 2180662);
citys.Add(city);
Możesz dodać do niej coś jeszcze.
City city2 = new City("Kraków", "KRA", "Polska", 3725051, 1620732);
citys.Add(city2);
Możesz wstawiać element w dowolne miejsce na liście.
Używając metody Insert() do której przekazujemy element do dodania i index który mówi na jakiej pozycji ma być dodany element.
var index = 3;
citys.Insert(index, city);
Możesz sprawdzić ile jest w niej elementów.
Używając właściwości Count.
int size = citys.Count;
Możesz sprawdzić czy lista zawiera konkretny element.
Używając metody Contains() do której przekazujemy element do sprawdzenia.
bool isIn = citys.Contains(city);
Możesz określić w którym miejscu się on znajduje.
Używając metody IndexOf() do której przekazujemy element do sprawdzenia.
int ind = citys.IndexOf(city);
Możesz usunąć z niej coś.
Używając metody Remove() do której przekazujemy element do usunięcia lub RemoveAt() do której przekazujemy index elementu do usunięcia.
citys.Remove(city);
citys.RemoveAt(index);
Możesz wyszukać pierwszy element który spełnia określone kryteria.
Używając metody FindIndex(), która przyjmuje jako parametr coś, co nazywa się
predykatem. Co to predykat wyjaśniam na kursie C# wprowadzenie do kolekcji.
int index = citys.FindIndex(city => city.Population < 2000000);
Możesz wyczyścić listę, usunąć wszystkie jej elementy.
Używając metody Clear().
citys.Clear();
Listy kurczą się i rosną dynamicznie.
Jedną z najlepszych właściwości List jest to, że nie musisz znać ich rozmiaru podczas tworzenia. Lista automatycznie rozszerza się i kurczy w zależności od zawartości.
Całościowe omówienie tematu kolekcji (tablica, lista, kolejka, stos, słownik).
Wiele przydatnych wskazówek i dobrych praktyk dostępne jest na kursie:
https://dev-hobby.pl/kursy/c-wprowadzenie-do-kolekcji/
Czlowiek upada i sie podnosi. Jedni nazywaja to gimnastyka, inni sensem zycia. – Slawomir Kuligowski http://www.xmc.pl
Dramatem zycia jest to, ze starzejemy sie zbyt szybko, a madrzejemy zbyt plzno. – Benjamin Franklin
You have brought up a very good details, thankyou for the post. Rosemarie Eldin Havard