Java - ArrayList - Lze nastavit maximální počet prvků?
Dobrý den,
Vím, že má ArrayList (oproti klasickému poli) dynamickou velikost, ale přesto se chci zeptat.
Je, prosím Vás, možné, u ArrayListu, nastavit maximální počet prvků?
Děkuji
Dobrý den,
Vím, že má ArrayList (oproti klasickému poli) dynamickou velikost, ale přesto se chci zeptat.
Je, prosím Vás, možné, u ArrayListu, nastavit maximální počet prvků?
Děkuji
Předmět | Autor | Datum |
---|---|---|
Určitě je to možné. Stačí ti k tomu znát magickou syntaxi.
var x = new String[10];
Tento kus kódu… vlada01 19.06.2019 02:19 |
vlada01 | |
ještě jako bonus k tomu dostaneš škálovatelnost
Len pre zaujímavosť, čo máš na mysli pod škálovateľ… moose 19.06.2019 06:44 |
moose | |
Špatně jsem to použil. Myslel jsem tím, že za pomocí polí se dají vytvářet složitější třídy, např. z… nový vlada01 19.06.2019 19:17 |
vlada01 | |
No, uzavřel bych to s tím, že mě jenom zajímalo, jestli je to možné, ale lze to nastavit pouze u kla… nový MichalDM 22.06.2019 23:42 |
MichalDM | |
Each ArrayList instance has a capacity. The capacity is the size of the array used to store the elem… nový vlada01 23.06.2019 00:00 |
vlada01 | |
OK. Díky poslední MichalDM 23.06.2019 00:06 |
MichalDM |
Zpět do poradny Odpovědět na původní otázku Nahoru
Určitě je to možné. Stačí ti k tomu znát magickou syntaxi.
Tento kus kódu je fool-proof. Dokonce to má i kontrolu na to, že nemůžeš získat prvek s indexem větším (nebo menším) než je velikost pole - 1, jinak skončíš u IndexOutOfBoundsException ještě jako bonus k tomu dostaneš škálovatelnost. Člověk by nevěřil co všechno se dá s pouhým polem dokázat. Doslova všechno. K tvému štěstí je Java OOP a vytvoření třídy s privátní vlastností, která bude reprezentovat třeba (tohle je úplně OT - nemá to žádnou souvislost s tim na co se ptáš) index posledního prvku v poli o pevné velikosti, není vůbec složité. O nějakých metodách se snad ani nemá cenu zmiňovat
Len pre zaujímavosť, čo máš na mysli pod škálovateľnosťou v tomto prípade?
Špatně jsem to použil. Myslel jsem tím, že za pomocí polí se dají vytvářet složitější třídy, např. zde zmiňované ArrayListy.
No, uzavřel bych to s tím, že mě jenom zajímalo, jestli je to možné, ale lze to nastavit pouze u klasického pole.
V podstatě, u pole je to nutnost. U ArrayListu je pouze možné zadat, s jakým počtem prvků se inicializuje. (normálně je to 0)
I když, přesto bych se chtěl zeptat. Jaký je rozdíl mezi
a
Pokud následně přidáš 100 objektů, tak je výsledek stejný.
K čemu je teda inicializace dobrá?
Díky
https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html
Jedná se o prvotní velikost pole, ve kterém se elementy ukládají.
OK. Díky