package array01;
import java.util.Arrays;
public class Array_copy08 {
public static void main(String[] args) {
int[] oldScore = {90, 87, 69, 97, 85};
// 한번 설정한 배열의 크기는 변경할 수 없다. ( 배열의 단점 )
//oldScore[5] = 66;
//System.out.println(oldScore[5]); -> 배열보다 더 큰 공간에 값을 넣으려고 하면 오류
int[] newScore = new int [10];
//for(int i=0; i<oldScore.length; i++) {
//newScore[i] = oldScore[i]; // 기존 배열에 있는 값을 새로운 배열에 넣는 작업 ( for문 이용 )
//}
newScore[5] = 78;
//System.out.println(Arrays.toString(newScore)); // [90, 87, 69, 97, 85, 78, 0, 0, 0, 0] 출력 -> 값을 넣지 않은 부분에는 초기값 0이 삽입 됨
//System.arraycopy(oldScore, 0, newScore, 0, oldScore.length);
// oldScore의, x번 인덱스부터 뽑아서, newScore의, y번 인덱스에 넣겠다 , 갯수는 n개
System.arraycopy(oldScore, 1, newScore, 3, 4); // [0, 0, 0, 87, 69, 97, 85, 0, 0, 0] 출력
System.out.println(Arrays.toString(newScore));
String oldStr[] = {"java", "python", "oracle"};
String newStr[] = new String[10];
System.arraycopy(oldStr, 0, newStr, 2, 3);
System.out.println(Arrays.toString(newStr)); // [null, null, java, python, oracle, null, null, null, null, null] 출력 -> 값이 안들어가면 초기값 null이 삽입 됨( 주소 값 )
}
}