Sobes.tech
Назад к вопросам
Junior — Middle
61

Каким образом можно сделать дубликат коллекции в памяти?

Компании, где спрашивали
IT OneIT One

Ответ от нейросети

sobes.tech AI

Для создания дубликата коллекции в памяти в Java можно использовать несколько подходов:

  1. Конструктор копирования — многие коллекции имеют конструктор, принимающий другую коллекцию, который создает поверхностную копию:
List<String> original = new ArrayList<>();
original.add("A");
original.add("B");

List<String> copy = new ArrayList<>(original);
  1. Метод clone() — некоторые коллекции реализуют интерфейс Cloneable и имеют метод clone(), который создает поверхностную копию:
ArrayList<String> copy = (ArrayList<String>) original.clone();
  1. Использование потоков (Streams) — можно создать новую коллекцию, скопировав элементы:
List<String> copy = original.stream().collect(Collectors.toList());

Важно: все эти способы создают поверхностную копию — объекты внутри коллекции не клонируются, а копируются ссылки. Для глубокой копии нужно клонировать каждый элемент отдельно.