Встречается на собеседованиях • сегодня

Что произойдет под капотом у ArrayList при удалении всех элементов

При удалении всех элементов из ArrayList (например, через clear()) происходит следующее:

  1. Все элементы массива внутреннего хранилища (elementData) заполняются null, чтобы позволить GC собрать их
  2. Размер списка (size) сбрасывается в 0
  3. Важно: Вместимость (capacity) не изменяется, массив не пересоздаётся

Пример кода из JDK (упрощённо):

java
public void clear() {
    for (int i = 0; i < size; i++)
        elementData[i] = null;
    size = 0;
}

Если нужно освободить память, можно вызвать trimToSize() после clear(), который создаст новый пустой массив стандартного размера.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы