동일한 타입의 변수를 여러개 사용
그래서 나온 것이 배열
타입[] 변수명 or 타입 변수명[]
: 배열의 생성시 각 배열의 값은 기본값을 가지게 된다
자료형 | 기본값 | 비고 |
---|---|---|
boolean | false | |
char | '\u0000' | 공백문자 |
byte, short, int | 0 | |
long | 0L | |
float | 0.0f | |
double | 0.0 | |
참조형 변수 | null | 아무것도 참조하지 않음 |
: 또한 배열이 가지는 값은 해당 배열의 주소값이다.
int[] i = new int[4];
int i[] = new int[4];
// 배열의 index 시작은 0부터
i[0] = 1;
i[1] = 2;
i[2] = 3;
i[3] = 4;
int[][] i = new int[4];
int i[][] = new int[4];
int[] i[] = new int[4];
int i[] = {1, 2, 3, 4};
int i[] = new int[]{1, 2, 3, 4};
// 선언 후 생성 시 초기화 주의
int[] i;
i = {1, 2, 3, 4}; //컴파일 에러
int[] i;
i = new int[]{1, 2, 3, 4};
int[] i = {1, 2, 3, 4, 5};
// 일반적인 반복문
for(int j=0 ; j<i.length ; j++){
System.out.println(i[j]);
}
// for-each
for(int j : i){
System.out.println(j);
}
// 둘 모두 실행결과는 같다
// 1
// 2
// 3
// 4
// 5
int[] i1 = {1, 2, 3, 4, 5};
int[] i2 = new int[5];
//System.arraycopy(복사하는 배열, 복사하는 배열의 시작 주소, 복사되는 배열, 복사되는 배열의 시작주소, 복사될 길이)
System.arraycopy(i1, 0, i2, 0, i1.length);
for(int j : i2){
System.out.print(j+" ");
}
// 실행결과
// 1 2 3 4 5