Junior — Middle
Как се променя размерът на ArrayList при последователно добавяне на елементи до достигане на определено количество
sobes.tech AI
Отговор от AI
В Java класът ArrayList реализира динамичен масив, който автоматично увеличава размера си при добавяне на нови елементи, ако текущата му капацитет е запълнен.
Първоначално ArrayList се създава с определена капацитет (по подразбиране 10). Когато броят на елементите достигне тази капацитет, размерът на вътрешния масив се увеличава. В стандартната реализация размерът се увеличава приблизително с 50% от текущия (т.е., новият капацитет = старият капацитет + старият капацитет / 2).
Това позволява баланс между разходите за копиране на данни и използването на памет.
Пример:
ArrayList<Integer> list = new ArrayList<>();
// Добавяме елементи, когато размерът достигне 10, капацитетът ще се увеличи приблизително до 15
for (int i = 0; i < 20; i++) {
list.add(i);
}