반응형
이번 포스팅에서는 자바(Java)에서 다차원 배열에 대하여 공부를 해보고자 한다.
다차원 배열이란
이차원 이상으로 구현한 배열을 다차원 배열이라고 한다.
수학에서 평면을 나타내기 위해 x, y 좌표를 쓰는 것처럼 프로그램에서도 평면을 구현하기 위해 이차원 배열을 사용할 수 있다.
삼차원 이상의 배열도 가능한데, 삼차원 배열은 주로 공간을 나타내는 프로그램에서 활용한다.
다차원 배열은 평면이나 공간 개념을 구현하는 데 사용한다.
이차원 배열
다음은 이차원 배열을 선언하는 코드와 논리구조다.
배열의 모든 요소를 참조하려면 각 행을 기준으로 열 값을 순회하면 된다.
이차원 배열을 초기화하려면 다음처럼 행과 열 개수에 맞춰서 중괄호 { } 안에 콤마(,)로 구분해 값을 적는다.
- 이차원 배열을 초기화하면 괄호 안에 적은 6개 값이 순서대로 arr 배열의 각 요소에 저장된다.
예제
이차원 배열 초기화
public class TowDimension {
public static void main(String[] args) {
int[][] arr = {{1,2,3},{4,5,6}};
for(int i=0; i<arr.length; i++){
for(int j=0; j<arr[i].length; j++){
System.out.println(arr[i][j]);
}
System.out.println(); //행 출력이 끝난 후 한 줄 띄움
}
}
}
- 5-7행의 중첩 for문은 배열 인덱스용으로 i, j 두 변수를 사용하는데 i는 행을, j는 열을 가리킨다.
- 전체 배열 길이인 arr.length는 행의 개수를 각 행의 길이 arr[i].length는 열의 개수를 나타낸다.
이차원 배열 길이 출력
public class TwoDimension2 {
public static void main(String[] args) {
int[][] arr = new int[2][3]; //2행 3열 이차원 배열 선언
for(int i=0; i<arr.length; i++){
for(int j=0; j<arr[i].length; j++){
System.out.println(arr[i][j]);
}
System.out.println();
}
System.out.println(arr.length);
System.out.println(arr[0].length);
}
}
출력 결과
//1행 1열 ~ 1행 3열
0
0
0
//2행 1열 ~ 2행 3열
0
0
0
2 //행 길이
3 //열 길이
- 이차원 배열을 선언만 하고 초기화를 따로 하지 않았기 때문에, 모두 0으로 자동 초기화되었다.
반응형
'Back-End > Java' 카테고리의 다른 글
[Java] 배열 응용 프로그램 (0) | 2023.02.05 |
---|---|
[Java] ArrayList 클래스 (0) | 2023.02.04 |
[Java] 배열(Array) (0) | 2023.02.04 |
[Java] 싱글톤 패턴(singleton pattern) (0) | 2023.02.03 |
[Java] 변수 유효 범위 (0) | 2023.02.03 |