Lista – możliwości wykorzystania listy.

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/

79 comments

  1. Dramatem zycia jest to, ze starzejemy sie zbyt szybko, a madrzejemy zbyt plzno. – Benjamin Franklin

  2. You have brought up a very good details, thankyou for the post. Rosemarie Eldin Havard

  3. You made some decent points there. I looked on the internet for the issue and found most individuals will go along with with your website. Austina Boycey Minta

  4. Unbelievably alluring knowledge you have stated, thanks a lot for writing. Tobe Tripp Avan

  5. Excellent article! We will be linking to this particularly great content on our website. Keep up the good writing. Sileas Dino Pentheas

  6. Top dissertation conclusion writer websites for masters . Mavra Andres Weinrich

  7. Eye-catching component of content. I simply stumbled upon your web web page and in accession capital to assert that I acquire in fact loved account your web log posts. Any method I will end up being subscribing in your feeds or also I achievements you get proper of entry to frequently quickly. Waneta Nels Cassaundra

  8. Great blog. Really looking forward to read more. Really Cool. Theodosia Brade Mackler

  9. May I simply say what a relief to discover someone that actually understands what they are talking about online. You definitely realize how to bring a problem to light and make it important. More and more people have to check this out and understand this side of your story. I was surprised you are not more popular given that you certainly possess the gift. Terra Stevy Socrates

  10. Greetings! Very helpful advice in this particular article! It is the little changes that will make the greatest changes. Many thanks for sharing! Aurilia Tomas Barkley

  11. Greetings! Very helpful advice in this particular post! Tillie Wesley Buehrer

  12. Hello, I read your new stuff on a regular basis. Your humoristic style is awesome, keep up the good work!| Caritta Yulma Ancell

  13. Hello! I simply wish to offer you a huge thumbs up for the great info you have got right here on this post. I am coming back to your site for more soon. Noell Warde Neila

  14. I was curious if you ever considered changing the layout of your site? Its very well written; I love what youve got to say. But maybe you could a little more in the way of content so people could connect with it better. Youve got an awful lot of text for only having one or 2 images. Maybe you could space it out better? Willie Mack Ravi

  15. you have a fantastic weblog right here! would you prefer to make some invite posts on my weblog? Shane Xavier Hyacinth

  16. Super-Duper site! I am loving it!! Will come back again. I am taking your feeds also. Arabelle Ozzy Tarrant

  17. I loved your article. Really looking forward to read more. Really Great. Cordi Emmott Ziwot

  18. Do you mind if I quote a few of your articles as long as I provide credit and sources back to your weblog? My blog site is in the exact same area of interest as yours and my visitors would definitely benefit from some of the information you present here. Please let me know if this alright with you. Thank you! Fran Halsey Barclay

  19. Your style is unique compared to other people I have read stuff from. I appreciate you for posting when you have the opportunity, Guess I will just bookmark this web site. Dolly Saxe Eckel

  20. Maintain your control, and keep repeating this process. Matti Huntington Nate

  21. Wow, this paragraph is pleasant, my younger sister is analyzing these kinds of things, so I am going to inform her.| Gertrud Hammad Terrene

  22. Muchos Gracias for your blog post. Really thank you! Fantastic. Rochell Samson Layman

  23. These are genuinely fantastic ideas in on the topic of blogging. You have touched some pleasant factors here. Any way keep up wrinting.| Ashlie Horatius Hewitt

  24. I was curious if you ever thought of changing the structure of your site? Its very well written; I love what youve got to say. But maybe you could a little more in the way of content so people could connect with it better. Youve got an awful lot of text for only having 1 or 2 images. Maybe you could space it out better?| Savina Roddie Alarise

  25. Im obliged for the article. Really thank you! Really Great. Noelyn Lars Marthe

  26. Hello. splendid job. I did not imagine this. This is a excellent story. Thanks! Gloria Eberhard Flessel

  27. Aqua Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Barbee Upton Hayden

  28. Hi my friend! I want to saay that this article is awesome, nice written and come with almoost all important infos. Viviana Sterne Gannes

  29. This is my first time go to see at here and i am truly pleassant to read all at alone place. Tedda Poul Rockie

  30. Everyone loves it whenever people come together and share ideas. Great blog, stick with it! Florentia Raimundo Dulcy

  31. Witam. Znalazłem Twoją witrynę za pomocą Google, nawet gdy szukałem podobnej sprawy, Twoja witryna pojawiła się. Wygląda dobrze. Dodałem go do zakładek w moich zakładkach Google, aby go odwiedzić.

  32. To musi być jeden z moich ulubionych postów! A do tego jest to bardzo pomocny temat dla początkujących. bardzo dziękuję za informację!

  33. Bardzo fajny post. Zdecydowanie doceniam tę stronę. Tak trzymaj!

  34. Świetnie! Kilka bardzo ważnych punktów! Dziękuję za napisanie tego artykułu, a reszta strony jest naprawdę dobra.

  35. Po przejrzeniu kilku artykułów na Twoim blogu, bardzo podoba mi się Twoja technika pisania bloga. Dodałem to do zakładek do mojej listy stron z zakładkami i będę sprawdzać w najbliższej przyszłości. Zonnya Saxe Erfert

  36. Czlowiek, ktory w wieku piecdziesieciu lat widzi swiat tak samo, jak widzial go majac dwadziescia lat, zmarnowal trzydziesci lat zycia. – Muhammad Ali

  37. Czlowiek, ktory w wieku piecdziesieciu lat widzi swiat tak samo, jak widzial go majac dwadziescia lat, zmarnowal trzydziesci lat zycia. – Muhammad Ali

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *