Назад к вопросам
Junior — Middle
53
Можете объяснить, как осуществляется копирование элементов массива и какие есть способы клонирования массива?
Ответ от нейросети
sobes.tech AI
В Java копирование элементов массива можно выполнить несколькими способами:
- Цикл for — самый простой способ, когда вручную копируем элементы по одному:
int[] source = {1, 2, 3};
int[] dest = new int[source.length];
for (int i = 0; i < source.length; i++) {
dest[i] = source[i];
}
- Метод
System.arraycopy— более эффективный способ копирования блоков массива:
int[] source = {1, 2, 3};
int[] dest = new int[source.length];
System.arraycopy(source, 0, dest, 0, source.length);
- Метод
clone()— создает поверхностную копию массива:
int[] source = {1, 2, 3};
int[] dest = source.clone();
- Метод
Arrays.copyOf— удобный способ копирования с возможностью изменить размер:
import java.util.Arrays;
int[] source = {1, 2, 3};
int[] dest = Arrays.copyOf(source, source.length);
Все эти способы создают поверхностную копию массива, то есть для массивов примитивных типов копируются значения, а для массивов объектов копируются ссылки на объекты.