배열의 선언
데이터형[ ] 배열이름;
배열의 생성 - 변수를 저장할 수 있는 사물함을 생성한다.
배열이름 = new 데이터형 [ 크기 ] ;
예
int [] grade; //여러개의 int형 변수를 저장할 수 있는 배열생성
grade = new ine[3]; //배열의 칸을 3카으로 할당.
배열의 선언과 크기 지정에 대한 일괄처리
데이터형[]배열이름 = new 데이터형[크기];
배열 생성의 예
int[] grade = new int [3];
배열은 값을 저장할 수 있는 공간일 뿐, 그 자체가 값은 아니다.
값이 대입되지 않은 경우, 숫자형은 0, boolean형은 false가 자동으로 대입된다.
배열안에 값을 저장하기 위해서는 인덱스 번호를 사용하여 각각의 칸에 직접 값을
대입해야한다.
배열이름[인덱스] = 값;
int[] grade = new int[3];
grade[0] = 75;
grade[1] = 82;
grade[2] = 91;
데이터형[] 배열이름 = new 데이터형 {값1, 값2, ...}
데이터형[] 배열이름 = {값1, 값2, ...}
System.out.println ( grade[2] );
System.out.println ( grade[0] );
int[] grade = new int[]{100,100,90};
for( int i=0; i<3; i++ ){
System.out.println(grade[i]);
}
배열의 길이를 얻기 위해서는 "배열이름.length" 형식으로 접근하게 된다.
grade라는 배열을 생성한 경우 배열의 길이
int size = grade.length;
int[] grade = new int[]{100,100,90};
for( int i=0; i<grade.length; i++ ){
System.out.println(grade[i]);
}
1차 배열
-> 앞에서 살펴본 배열 처럼 한 줄만 존재하는 사물함 같이 구성된 배열
-> 행에 대한 개념이 없고, 열에 대한 개념만 존재하기 때문에 "배열이름.legnth"는 몇칸인지를 알아보는 기능이 된다.
2차 배열
-> 1차 배열의 각 칸에 새로운 배열을 넣는 형태
-> 1차 배열의 각 칸은 행이 되고, 각각의 칸에 추가된 개별적인 배열이 "열"의 개념이 되어 "행렬"을 구성하게 된다.
2차원 배열 선언
-> 데이터 타입의 이름 뒤에 대괄호 "[]"를 행과 열에 대하여 각각 지정한다.
데이터형[ ][ ]배열이름;
2차원 배열의 크기 할당
-> 행과 열에 대한 크기를 명시한다.
배열이름 = new 데이터형[행][열];
2차원 배열의 선언과 할당의 일괄처리
데이터형[ ][ ] 배열이름 = new 데이터형[행][열];
2차원 배열의 선언, 크기할당, 값의 대입에 대한 일괄처리
-> 2차원 배열의 경우 블록 괄호 '{}'를 2중으로 겹쳐서 2차원 배열을 표현한다.
-> 행과 열의 구분에는 콤마(,)가 사용된다.
-> 컴파일러가 블록괄호'{}'의 요소를 파악하면 행, 열의 크기가 산출 될 수 있으므로
배열의 크기 설정을 위한 [ ][ ]에는 배열의 크기를 명시하지 않는다.
데이터형[ ][ ]배열이름 = new 데이터형[ ][ ]{
{0행0열의 값, 0행1열의 값, ..., 0행 n열의 값},
{1행1열의 값, 1행 1열의 값, ..., 1행 n열의 값},
...
{n행1열의 값, n행 2열의 값, ..., n행 n열의 값},
};
배열이름[행][열] = 값;
1차 배열의 길이는 2차 배열에서는 행의 크기로 조회된다.
int rows = grade.length;
int cols = grade[행].length;