본문 바로가기

언어/Java

[ Java ] 다중 배열의 생성과 사용하기

반응형

Java에서 다중 배열(Multi-dimensional array)은 배열의 배열을 나타냅니다. 가장 일반적인 형태는 2차원 배열이며, 이는 행과 열로 구성된 배열입니다. 하지만 Java에서는 더 높은 차원의 배열도 만들 수 있습니다. 아래에 다중 배열을 생성하고 사용하는 방법을 자세히 설명하겠습니다.

1. 다중 배열 선언 및 생성

2차원 배열을 선언하고 생성하는 방법은 다음과 같습니다:

// 2차원 배열 선언
int[][] array2D;

// 2차원 배열 생성 (3x3 배열 생성 예시)
array2D = new int[3][3];

3차원 배열을 선언하고 생성하는 방법은 다음과 같습니다:

// 3차원 배열 선언
int[][][] array3D;

// 3차원 배열 생성 (3x3x3 배열 생성 예시)
array3D = new int[3][3][3];

2. 다중 배열 초기화

다중 배열을 선언과 동시에 초기화할 수도 있습니다:

// 2차원 배열 선언과 초기화
int[][] array2D = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9}
};

// 3차원 배열 선언과 초기화
int[][][] array3D = {
    {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    },
    {
        {10, 11, 12},
        {13, 14, 15},
        {16, 17, 18}
    },
    {
        {19, 20, 21},
        {22, 23, 24},
        {25, 26, 27}
    }
};

3. 다중 배열 접근

다중 배열의 요소에 접근하는 방법은 인덱스를 사용하는 것입니다:

// 2차원 배열 요소 접근
int value1 = array2D[1][2]; // 2번째 행의 3번째 열의 값 (6)

// 3차원 배열 요소 접근
int value2 = array3D[2][1][0]; // 3번째 행의 2번째 열의 1번째 깊이의 값 (22)

4. 다중 배열 사용 예시

다음은 2차원 배열을 사용하여 행렬의 모든 요소를 출력하는 예제입니다:

public class MultiArrayExample {
    public static void main(String[] args) {
        int[][] array2D = {
            {1, 2, 3},
            {4, 5, 6},
            {7, 8, 9}
        };

        // 배열의 모든 요소 출력
        for (int i = 0; i < array2D.length; i++) {
            for (int j = 0; j < array2D[i].length; j++) {
                System.out.print(array2D[i][j] + " ");
            }
            System.out.println();
        }
    }
}

이 예제에서는 중첩된 for 루프를 사용하여 2차원 배열의 모든 요소를 출력하고 있습니다.

5. 가변 길이 배열 (Jagged Array)

Java에서 다중 배열은 고정된 크기를 가질 필요는 없습니다. 각 행이 다른 길이를 가질 수 있습니다. 이를 가변 길이 배열이라고 합니다:

// 가변 길이 배열 선언과 생성
int[][] jaggedArray = new int[3][];
jaggedArray[0] = new int[2]; // 첫 번째 행에 2개의 열
jaggedArray[1] = new int[3]; // 두 번째 행에 3개의 열
jaggedArray[2] = new int[1]; // 세 번째 행에 1개의 열

// 요소 접근 및 초기화
jaggedArray[0][1] = 5; // 첫 번째 행의 두 번째 열에 값 5 할당

6. 요약

다중 배열은 배열의 배열을 나타내며, 2차원 배열과 3차원 배열 등의 여러 차원으로 확장될 수 있습니다. 배열을 선언하고 생성한 후, 인덱스를 통해 요소에 접근하고 사용할 수 있습니다. 가변 길이 배열을 사용하여 각 행의 길이를 다르게 설정할 수도 있습니다.

반응형