Sobes.tech
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.