package 선언부
Class 작성부
method 작성부
자료형[] 배열명;
자료형 배열명[];
int[] arr;
package 선언부
Class 작성부
method 작성부
배열명 = new 자료형[배열의 크기];
arr = new int[3];
package 선언부
Class 작성부
method 작성부
자료형[] 배열명 = new 자료형[배열의 크기];
자료형 배열명[] = new 자료형[배열의 크기];
int[] arr = new int[3];
package 선언부
Class 작성부
method 작성부
배열명[인덱스] = 값;
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
package 선언부
Class 작성부
method 작성부
for(int i=0; i<arr.length(); i++) {
arr[i] = i + 1;
}
package 선언부
Class 작성부
method 작성부
int[] arr = {1, 2, 3};
int[] arr = new int[] {1, 2, 3};
실행 순서
1. int[] arr
2. new int[4];
3. = (대입 연산자)
package 선언부
Class 작성부
method 작성부
int[] arr = {1, 2, 3};
arr = null;
package 선언부
Class 작성부
method 작성부
int[] arr1 = {1, 2, 3, 4};
int[] arr2 = arr1;
package 선언부
Class 작성부
method 작성부
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = new int[5];
for(int i=0; i<arr1.length; i++) {
arr2[i] = arr1[i];
}
기존 배열명
, 복사할 시작 인덱스
새로운 배열명
, 복사될 시작 인덱스
, 복사할 개수
);package 선언부
Class 작성부
method 작성부
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = new int[10];
System.arraycopy(arr1, 0, arr2, 0, arr1.length);
for(int i=0; i<arr2.length; i++) {
System.out.print(arr2[i] + " "); // 1, 2, 3, 4, 5, 0, 0, 0, 0, 0
}
System.arraycopy(arr1, 2, arr2, 3, 3);
for(int i=0; i<arr2.length; i++) {
System.out.print(arr2[i] + " "); // 0, 0, 0, 3, 4, 5, 0, 0, 0, 0
}
복사할 길이
가 기존 배열 크기보다 클 경우복사할 길이
가 원본배열의 크기보다 작을경우복사할 길이
만큼만 복사새로운 배열
= Arrays.copyOf(기존 배열명
, 복사할 길이
);package 선언부
Class 작성부
method 작성부
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = Arrays.copyOf(arr1, 3);
for(int i=0; i<arr2.length; i++) {
System.out.print(arr2[i] + " "); // 1, 2, 3
}
int[] arr2 = Arrays.copyOf(arr1, 10);
for(int i=0; i<arr2.length; i++) {
System.out.print(arr2[i] + " "); // 1, 2, 3, 4, 5, 0, 0, 0, 0, 0
}
package 선언부
Class 작성부
method 작성부
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = arr1.clone();
System.out.println(Arrays.toString(arr2); // [1, 2, 3, 4, 5]