Подтвердить что ты не робот

Функция addAll в Java сделает копию

Когда вызывается list.addAll(list2), будут ли скопированы объекты в списки в список? или просто скопировать их ссылки... не нашел никакого объяснения в javadoc...

4b9b3361

Ответ 1

Отсутствует копия объектов или их данных; их ссылки просто добавляются в объект списка.

Ответ 2

Нет, объекты не будут скопированы; ссылки на те же объекты будут добавлены в список.

Ответ 3

В общем случае java не будет копировать объекты, когда вы "добавляете все", то есть для объектов, указатели на оригиналы используются.

* Но будьте осторожны! Для строк из-за неизменности копия массива не будет указывать на исходные значения строк, и вы не должны ожидать, что изменение указателя на строку, которая была добавлена ​​в список массивов, приведет к новому значению внутри списка массивов.