[JAVA] 2차원 배열

김규리·2026년 7월 27일

Java 2차원 배열

2차원 배열이란?

2차원 배열은 행(Row)과 열(Column)로 이루어진 데이터를 저장하는 배열이다.

엑셀의 표나 행렬(Matrix)처럼 데이터를 테이블 형식으로 저장할 수 있는 구조이다.

예를 들어 다음과 같은 표를 2차원 배열로 표현할 수 있다.

열 0열 1열 2
123
456
789

배열 선언

2차원 배열은 다음과 같이 선언할 수 있다.

데이터형[][] 배열명;

또는

데이터형 배열명[][];

또는

데이터형[] 배열명[];

세 가지 모두 같은 의미이며, 가장 많이 사용하는 형태는 다음과 같다.

int[][] arr;

배열 생성

배열의 크기를 지정하여 생성한다.

데이터형[][] 배열명 = new 데이터형[행의 개수][열의 개수];

예시

int[][] arr = new int[3][4];

위 코드는

  • 행(Row) : 3개
  • 열(Column) : 4개

인 2차원 배열을 생성한다.


배열 초기화

배열을 생성하면서 값을 바로 저장할 수도 있다.

int[][] numbers = {
    {1, 2, 3, 4},
    {5, 6, 7, 8},
    {9, 10, 11, 12}
};

배열의 모습

행/열0123
01234
15678
29101112

배열 요소 접근

2차원 배열은

배열명[행][열]

형태로 접근한다.

예시

int num1 = numbers[0][1];
  • 첫 번째 행
  • 두 번째 열

값은 2이다.

int num2 = numbers[2][3];
  • 세 번째 행
  • 네 번째 열

값은 12이다.


배열 요소 변경

배열의 특정 값을 다른 값으로 변경할 수 있다.

numbers[1][2] = 10;

변경 전

5  6  7  8

변경 후

5  6 10  8

또 다른 예시

numbers[2][3] = 200;

변경 전

9 10 11 12

변경 후

9 10 11 200

배열의 길이

1. 행(Row)의 개수

int rows = array.length;

예시

int[][] arr = new int[3][4];

System.out.println(arr.length);

출력

3

즉, 행의 개수를 반환한다.


2. 열(Column)의 개수

int cols = array[0].length;

예시

int[][] arr = new int[3][4];

System.out.println(arr[0].length);

출력

4

즉, 첫 번째 행의 열 개수를 반환한다.


2차원 배열 전체 출력

2차원 배열은 보통 중첩 for문을 사용하여 출력한다.

int[][] numbers = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9}
};

for (int i = 0; i < numbers.length; i++) {
    for (int j = 0; j < numbers[i].length; j++) {
        System.out.print(numbers[i][j] + " ");
    }
    System.out.println();
}

출력 결과

1 2 3
4 5 6
7 8 9

0개의 댓글