Junior — Middle
104
Hoe wordt de procedure voor het verwijderen van elementen uit ArrayList binnen de interne structuur precies geïmplementeerd?
Bedrijven waar gevraagd werd
Antwoord van AI
sobes.tech AI
Внутри ArrayList элементы хранятся в массиве. При удалении элемента по индексу происходит сдвиг всех последующих элементов на одну позицию влево, чтобы заполнить освободившееся место. Размер списка уменьшается на 1, а последний элемент массива обнуляется для освобождения ссылки и предотвращения утечки памяти.
Пример упрощённого кода удаления:
public E remove(int index) {
E oldValue = elementData[index];
int numMoved = size - index - 1;
if (numMoved > 0) {
System.arraycopy(elementData, index + 1, elementData, index, numMoved);
}
elementData[--size] = null; // освобождаем ссылку
return oldValue;
}