반응형
System.arraycopy
함수는 Java에서 배열을 효율적으로 복사하는 방법 중 하나입니다. 이 함수는 소스 배열의 특정 부분을 대상 배열의 특정 부분으로 복사할 수 있게 해줍니다. 아래에 System.arraycopy
함수를 사용하여 배열을 복사하는 예제를 제공합니다.
1. System.arraycopy
함수의 시그니처
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
src
: 원본 배열srcPos
: 원본 배열에서 복사를 시작할 인덱스dest
: 대상 배열destPos
: 대상 배열에 붙여넣기를 시작할 인덱스length
: 복사할 요소의 수
2. 예제
다음은 System.arraycopy
함수를 사용하여 배열을 복사하는 예제입니다:
public class ArrayCopyExample {
public static void main(String[] args) {
// 원본 배열 선언 및 초기화
int[] sourceArray = {1, 2, 3, 4, 5};
// 대상 배열 선언 및 초기화
int[] destinationArray = new int[5];
// 배열 복사
System.arraycopy(sourceArray, 0, destinationArray, 0, sourceArray.length);
// 복사된 배열 출력
System.out.println("Source Array: ");
for (int element : sourceArray) {
System.out.print(element + " ");
}
System.out.println();
System.out.println("Destination Array: ");
for (int element : destinationArray) {
System.out.print(element + " ");
}
System.out.println();
// 부분 배열 복사
int[] partialArray = new int[3];
System.arraycopy(sourceArray, 1, partialArray, 0, 3);
// 부분 복사된 배열 출력
System.out.println("Partial Array (copied from sourceArray[1] to partialArray[0]): ");
for (int element : partialArray) {
System.out.print(element + " ");
}
System.out.println();
}
}
3. 설명
- 원본 배열 및 대상 배열 선언:
sourceArray
는{1, 2, 3, 4, 5}
로 초기화됩니다.destinationArray
는 길이가 5인 새로운 배열로 선언됩니다.
- 전체 배열 복사:
System.arraycopy(sourceArray, 0, destinationArray, 0, sourceArray.length)
는sourceArray
의 모든 요소를destinationArray
에 복사합니다.
- 배열 출력:
sourceArray
와destinationArray
의 요소를 출력하여 복사된 내용을 확인합니다.
- 부분 배열 복사:
partialArray
는 길이가 3인 새로운 배열로 선언됩니다.System.arraycopy(sourceArray, 1, partialArray, 0, 3)
는sourceArray
의 두 번째 요소부터 세 개의 요소를partialArray
에 복사합니다.
- 부분 복사된 배열 출력:
partialArray
의 요소를 출력하여 부분적으로 복사된 내용을 확인합니다.
이 예제를 통해 System.arraycopy
함수를 사용하여 전체 배열을 복사하는 방법과 배열의 일부분을 복사하는 방법을 이해할 수 있습니다.
반응형
'언어 > Java' 카테고리의 다른 글
[ Java ] args를 통한 command line 입력 받기 (0) | 2024.07.31 |
---|---|
[ Java ] java.util.Scanner를 통해서 입력 받기 (0) | 2024.07.31 |
[ Java ] 가변 배열을 생성하고 사용하기 (0) | 2024.07.31 |
[ Java ] 다차원 배열을 사용하는 예제 (0) | 2024.07.31 |
[ Java ] 다중 배열의 생성과 사용하기 (0) | 2024.07.31 |