[TIL][Java][2323-11-28] 배열 - 다차원 배열

2023. 11. 28. 20:14TIL/Java

다차원 배열

 

 

이전 글들에서 정리했던 1열로 구성된 배열들은 말 그대로 1열로 되어있기 때문에 1차원 배열 이라고도 부른다.

1차원 배열을 위로 쌓으면 2차원 배열이 된다.

 

2차원 배열 예시

 

 

 

 

선언

 

  • 2차원 배열을 선언할 때는 1차원 배열에 대괄호 하나 더 추가해 주면 된다
    1. int[][] array
    2. int array[][]
    3. int[] array[]

 

 

생성

  • 2차원 배열을 생성할 때도 대괄호 하나 더 추가하면 된다.
    • int[][] array = new int[][];

 

 

 

초기화

 

  • 2차원 배열의 초기화는 2가지 방법이 있다

 

1. 중괄호를 이용해 선언과 동시에 초기화한다.

// 중괄호를 사용해 초기화

int[][] array = {
	{1, 2, 3},
	{4, 5, 6}
};

 

 

2. 선언과 생성 이후 반복문을 통해 초기화를 한다.

// 반복문을 통한 초기화

int[][] array = new int[2][3]; // 최초 선언

for (int i = 0; i < array.length; i++) {
    for (int j = 0; j < array[i].length; j++) {
        arr[i][j] = 0;
    }
}

 

 

 

 

 

 

가변 배열

 

Java에서는 2차원 배열을 생성할 때 열의 길이를 생략하여 행마다 다른 길이의 배열을 요소로 저장할 수 있다.

이런 배열을 가변 배열이라고 한다.

 

// 가변 배열

// 선언 및 초기화
int[][] array = new int[3][];
// 배열 원소마다 각기다른 크기로 지정 가능하다.
array[0] = new int[2];
array[1] = new int[4];
array[2] = new int[1];


// 중괄호 이용 초기화할 때도 원소 배열들의 크기를 각기 다르게 생성 가능하다.
int[][] array2 = {
    {10, 20},
    {10, 20, 30, 40},
    {10}
};