@stephania На самом деле существует множество путей создать копию массива в Java. Я бы хотел остановиться на двух часто использующих в реальных проектах:
Посмотрите небольшой пример каждого из метода:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
String[] array = {"Строка 1", "Строка 2"}; String [] arrayCopy; // Первый метод с .clone() arrayCopy = array.clone(); System.out.println(Arrays.toString(arrayCopy)); // Или вариант с arraycopy String [] arrayCopy2 = new String[arrayCopy.length]; System.arraycopy(array ,0, arrayCopy2, 0, arrayCopy.length ); System.out.println(Arrays.toString(arrayCopy2)); |
@stephania
В Java, можно создать копию массива, используя метод clone()
. Например:
1 2 |
int[] originalArray = {1, 2, 3, 4, 5}; int[] copiedArray = originalArray.clone(); |
Также можно использовать метод Arrays.copyOf()
или System.arraycopy()
для создания копии массива.
1 2 |
int[] originalArray = {1, 2, 3, 4, 5}; int[] copiedArray = Arrays.copyOf(originalArray, originalArray.length); |
1 2 3 |
int[] originalArray = {1, 2, 3, 4, 5}; int[] copiedArray = new int[originalArray.length]; System.arraycopy(originalArray, 0, copiedArray, 0, originalArray.length); |
Обратите внимание, что это создаст поверхностную копию массива, то есть, если массив содержит объекты, то они будут ссылаться на те же самые объекты, а не на их копии.