Junior — Middle
Ako je implementovaná štruktúra indexov v ArrayList?
sobes.tech AI
Odpoveď od AI
V ArrayList je štruktúra indexov implementovaná cez vnútorný pole objektov (Object[] elementData). Tento pole slúži ako dynamické pole, kde je každý prvok dostupný podľa indexu v konštantnom čase.
Pri pridávaní prvkov ArrayList kontroluje, či je v poli dostatok miesta. Ak nie je, vytvorí sa nové väčšie pole (zvyčajne o 50% väčšie) a prvky sa do neho skopírujú.
Prístup k prvkom podľa indexu sa vykonáva priamo cez odkaz na pole:
E element = (E) elementData[index];
Takže index je jednoducho pozícia v poli, čo zabezpečuje rýchle načítanie a aktualizáciu prvkov. Vkladanie alebo odstraňovanie uprostred zoznamu však vyžaduje posun prvkov, čo trvá lineárny čas.