전체 배열을 복사하는 것과 복사본 길이를 지정해서 처음부터 지정된 길이만큼 복사하는 것도 가능하다.
import java.util.Arrays;
public class ArrayCopyExample {
public static void main(String[] args) {
// 원본 배열 생성
int[] originalArray = {1, 2, 3, 4, 5};
// 배열 복사: 새로운 배열의 길이를 원본 배열의 길이로 지정
int[] copiedArray = Arrays.copyOf(originalArray, originalArray.length);
// 결과 출력
System.out.println("원본 배열: " + Arrays.toString(originalArray));
System.out.println("복사된 배열: " + Arrays.toString(copiedArray));
}
}
결과
원본 배열: [1, 2, 3, 4, 5]
복사된 배열: [1, 2, 3, 4, 5]
import java.util.Arrays;
public class ArrayCopyExample {
public static void main(String[] args) {
// 원본 배열 생성
int[] originalArray = {1, 2, 3, 4, 5};
// 배열 복사: 새로운 배열의 길이를 3으로 지정
int[] copiedArray = Arrays.copyOf(originalArray, 3);
// 결과 출력
System.out.println("원본 배열: " + Arrays.toString(originalArray));
System.out.println("복사된 배열: " + Arrays.toString(copiedArray));
}
}
결과
원본 배열: [1, 2, 3, 4, 5]
복사된 배열: [1, 2, 3]
시작, 끝 인덱스를 지정해서 부분 복사가 가능하다.
주의할 점은 끝 인덱스로 지정한 인덱스는 포함이 안 된다!!
import java.util.Arrays;
public class StringArrayCopyRangeExample {
public static void main(String[] args) {
// 원본 문자열 배열 생성
String[] originalArray = {"Apple", "Banana", "Cherry", "Date", "Elderberry"};
// 배열의 일부를 복사: 인덱스 1부터 3까지 (Banana, Cherry, Date)
String[] copiedArray = Arrays.copyOfRange(originalArray, 1, 4);
// 결과 출력
System.out.println("원본 배열: " + Arrays.toString(originalArray));
System.out.println("복사된 배열: " + Arrays.toString(copiedArray));
}
}
결과
원본 배열: [Apple, Banana, Cherry, Date, Elderberry]
복사된 배열: [Banana, Cherry, Date]