Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
LittleOne
Člen
Avatar
LittleOne:7.1.2016 20:29

Ahojte, práve som začal s C# a dosť ma zaujíma, kedy je lepšie použiť List<> a kedy Array. Čo si o tom myslíte?

 
Odpovědět
7.1.2016 20:29
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na LittleOne
vajkuba1234:7.1.2016 22:28

Prace je lehce podobna s obema, avsak s kolekci (List<>) je jednodussi, protoze je doplnena o metody pro pridavani, mazani, atd. Kdezto s polem to delas treba pomoci cyklu a je okolo toho vice kecu.

Na nejake obycejne ciselne hodnoty ti staci pole a pote jejich vypis, ale kdyz pouzijes kolekci, mas to jednodusi.

Koukni zde:

http://www.itnetwork.cz/csharp/kolekce-a-linq/c-sharp-tutorial-seznamy-kolekce-list
Nahoru Odpovědět
7.1.2016 22:28
No hope, no future, JUST WAR!
Avatar
Odpovídá na LittleOne
Neaktivní uživatel:8.1.2016 17:57

Hlavní rozdíl pro tebe je ten, že pole má pevně danou velikost, zatímco List<T> ji má dynamickou. Pole je rychlejší a také nativně podporuje více rozměrů (pole[0, 2]). Práce s Listem je ale pro programátora jednodušší, jelikož podporuje metody pro přidání na konec a podobně.

Nahoru Odpovědět
8.1.2016 17:57
Neaktivní uživatelský účet
Avatar
Odpovídá na LittleOne
Michal Žůrek - misaz:8.1.2016 18:32

když si zapamatuješ, že List je lepší pole, tak v podstatě budeš mít pravdu.

 
Nahoru Odpovědět
8.1.2016 18:32
Avatar
Petr Čech
Tvůrce
Avatar
Petr Čech:8.1.2016 19:38

Je to asi takto:

  • máš známý počet prvkům jejichž počet se nemění, nebudeš je v průběhu přidávat ani mazat => pole. (minorita případů)
  • máš neznámý počet prvků, v průběhu je budeš přidávat, měnit, mazat (třeba list uživatelů), nechceš se start o IndexOutOfRan­geException => List nebo jiná generická kolekce
Nahoru Odpovědět
8.1.2016 19:38
the cake is a lie
Avatar
LittleOne
Člen
Avatar
LittleOne:8.1.2016 20:02

Ok, Ďakujem za všetky odpovede :)

 
Nahoru Odpovědět
8.1.2016 20:02
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.