Встречается на собеседованиях • сегодня
Как меняется размер ArrayList при удалении элемента
При удалении элемента из `ArrayList` его размер уменьшается на 1, но внутренний массив (`elementData`) остается прежнего размера. Физическое сжатие массива происходит только при вызове `trimToSize()`.
Пример:
```java
ArrayList list = new ArrayList<>(10);
list.add("A");
list.add("B");
list.remove(0); // Размер = 1, но capacity остаётся 10
list.trimToSize(); // Теперь capacity = 1
```
**Важно:**
- Удаление по индексу (`remove(int)`) сдвигает последующие элементы влево, что может быть затратно для больших списков.
- Удаление по значению (`remove(Object)`) требует поиска элемента, что также влияет на производительность.
- При частых удалениях лучше использовать `LinkedList`.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы