System.arraycopy는 자바 배열의 값을 복사할 경우 사용한다.
형식: arraycopy(Object src, int srcPos, object dest, int destPos, length)
**파라미터
src - 전송원배열
srcPos - 소스 배열의 개시 위치
dest - 전송처 배열
destPos - 전송처 데이터내의 게시 위치
length - 카피되는 배열 요소의 수
array2, 3의 알파벳을 array1의 숫자로 복사하는 예제 코드다.
public static void main(String[] args) {
char array1[] = {'1', '2', '3', '4','5'};
char array2[] = {'A', 'B', 'C', 'D','E'};
char array3[] = {'A', 'B', 'C', 'D','E'};
System.out.print("Array1 배열 값: ");
for(int i=0; i<array1.length;i++){
System.out.print(array1[i] + " ");
}
System.out.println("\n");
System.out.print("Array2 배열 값: ");
for(int i=0; i<array2.length;i++){
System.out.print(array2[i] + " ");
}
System.out.println("\n");
System.arraycopy (array1, 0, array2, 0, array1.length);
// array1의 0번 값을 array2의 0번째로 1의 길이만큼 복사
System.out.print("모든 Array2를 숫자로 변경"+ "\n"+"Array1 배열 값: ");
for(int i=0; i<array1.length;i++){
System.out.print(array1[i] + " ");
}
System.out.println("\n");
System.out.print("Array2 배열 값: ");
for(int i=0; i<array2.length;i++){
System.out.print(array2[i] + " ");
}
System.out.println("\n");
System.arraycopy (array1, 0, array3, 2, 2);
// array1의 0번 값을 array3의 2번 값부터 2개 길이만큼 복사
System.out.print("Array3의 3,4번째만 숫자로 변경"+ "\n"+"Array1 배열 값: ");
for(int i=0; i<array1.length;i++){
System.out.print(array1[i] + " ");
}
System.out.println("\n");
System.out.print("Array3 배열 값: ");
for(int i=0; i<array3.length;i++){
System.out.print(array3[i] + " ");
}
System.out.println("\n");
}
}
결과
Array1 배열 값: 1 2 3 4 5
Array2 배열 값: A B C D E
모든 Array2를 숫자로 변경
Array1 배열 값: 1 2 3 4 5
Array2 배열 값: 1 2 3 4 5
Array3의 3,4번째만 숫자로 변경
Array1 배열 값: 1 2 3 4 5
Array3 배열 값: A B 1 2 E
'문돌이의 IT > 자바(Java)' 카테고리의 다른 글
자바(Java) 접근제한자(Access Modifier) (0) | 2016.03.03 |
---|---|
자바(Java) 다차원배열의 기본 (0) | 2016.03.02 |
자바(Java) Math.random()으로 중복없이 로또번호 생성하기 (9) | 2016.02.29 |
자바(Java) 배열(Array) 활용하기 (0) | 2016.02.28 |
자바(Java) Math클래스 활용하기 (0) | 2016.02.27 |