프로그래밍 언어/JAVA

JAVA: 다차원 배열(Multidimensional Arrays)

구루다 2023. 2. 28. 02:28
반응형

JAVA: 다차원 배열(Multidimensional Arrays)

자바에서 배열은 여러 개의 값을 효율적으로 저장하고 다룰 수 있는 유용한 데이터 구조입니다. 이전 글에서는 1차원 배열에 대해 다루었습니다. 이번 글에서는 다차원 배열에 대해 알아보겠습니다.

 

JAVA 5-3
JAVA 5-3

 

 

JAVA: 배열 요소에 접근하고 수정하기

JAVA에서 배열 요소에 접근하고 수정하기 자바에서 배열은 여러 개의 데이터를 하나의 변수에 저장할 수 있는 효율적인 방법입니다. 배열의 각 요소는 인덱스를 사용하여 접근할 수 있습니다. 이

gruda.tistory.com

 

JAVA: 배열 선언과 초기화하기

JAVA: 배열 선언과 초기화하기 자바에서 배열(Array)은 여러 개의 값들을 하나의 변수로 저장하고, 인덱스를 이용하여 해당 값을 참조할 수 있도록 합니다. 배열을 선언하고 초기화하는 방법은 다

gruda.tistory.com

 

JAVA: 프로그램 흐름 제어 Jump Statements (Break, Continue)

JAVA: 프로그램 흐름 제어 Jump Statements (Break, Continue) 자바는 구조적인 프로그래밍을 지향하며, 이는 프로그램의 실행 흐름을 제어하는 제어문을 제공합니다. 제어문 중 Jump Statements인 break와 continue

gruda.tistory.com

 

JAVA: 반복문 Looping Statements (For, While, Do-while)

JAVA 프로그래밍 언어: Looping Statements (For, While, Do-while) 프로그래밍에서 반복문(looping statement)은 어떤 작업을 반복해서 수행할 때 사용됩니다. JAVA 언어에서는 For, While, Do-while 세 가지 종류의 반복

gruda.tistory.com

 

 

2차원 배열(2D Arrays)

2차원 배열은 배열 안에 배열을 포함시키는 방식으로 구현됩니다. 이러한 배열은 행(row)과 열(column)로 구성됩니다. 행은 배열의 첫 번째 인덱스로 표현되고, 열은 두 번째 인덱스로 표현됩니다.

 

반응형



2차원 배열을 생성하려면, 배열의 행과 열의 크기를 지정해야 합니다. 예를 들어, 3행 4열의 2차원 배열을 생성하려면 다음과 같이 작성할 수 있습니다.

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

위 코드는 int 타입의 2차원 배열 arr을 생성하며, 이 배열은 3개의 행과 4개의 열로 구성됩니다. 이러한 배열은 다음과 같은 방식으로 초기화할 수 있습니다.

arr[0][0] = 1;
arr[0][1] = 2;
arr[0][2] = 3;
arr[0][3] = 4;

arr[1][0] = 5;
arr[1][1] = 6;
arr[1][2] = 7;
arr[1][3] = 8;

arr[2][0] = 9;
arr[2][1] = 10;
arr[2][2] = 11;
arr[2][3] = 12;

위 코드에서 arr[0][0]은 1행 1열의 값을 나타내며, arr[2][3]은 3행 4열의 값을 나타냅니다.

2차원 배열을 다룰 때 유용한 반복문은 for문입니다. 다음 예제는 2차원 배열의 모든 요소를 출력하는 방법을 보여줍니다.

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

위 코드에서 arr.length는 배열의 행의 수를 나타내며, arr[i].length는 i번째 행의 열의 수를 나타냅니다.

 

300x250

 

3차원 배열(3D Arrays)

3차원 배열은 2차원 배열을 배열 안에 추가하여 구현됩니다. 3차원 배열은 행, 열, 그리고 깊이(depth)로 구성됩니다. 행과 열은 2차원 배열에서와 같이 구성되며, 깊이는 2차원 배열의 개념을 적용하면, 배열 안에 배열을 추가하여 구현할 수 있습니다. 예를 들어, 2개의 2차원 배열을 포함하는 3차원 배열을 생성하려면 다음과 같이 작성할 수 있습니다.

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

위 코드는 int 타입의 3차원 배열 arr을 생성하며, 이 배열은 2개의 2차원 배열을 포함하고, 각 2차원 배열은 3개의 행과 4개의 열로 구성됩니다. 이러한 배열은 다음과 같은 방식으로 초기화할 수 있습니다.

arr[0][0][0] = 1;
arr[0][0][1] = 2;
arr[0][0][2] = 3;
arr[0][0][3] = 4;

arr[0][1][0] = 5;
arr[0][1][1] = 6;
arr[0][1][2] = 7;
arr[0][1][3] = 8;

arr[0][2][0] = 9;
arr[0][2][1] = 10;
arr[0][2][2] = 11;
arr[0][2][3] = 12;

arr[1][0][0] = 13;
arr[1][0][1] = 14;
arr[1][0][2] = 15;
arr[1][0][3] = 16;

arr[1][1][0] = 17;
arr[1][1][1] = 18;
arr[1][1][2] = 19;
arr[1][1][3] = 20;

arr[1][2][0] = 21;
arr[1][2][1] = 22;
arr[1][2][2] = 23;
arr[1][2][3] = 24;

위 코드에서 arr[0][0][0]은 1번째 2차원 배열의 1행 1열의 값을 나타내며, arr[1][2][3]은 2번째 2차원 배열의 3행 4열의 값을 나타냅니다.

3차원 배열도 마찬가지로 for문을 사용하여 다룰 수 있습니다. 다음 예제는 3차원 배열의 모든 요소를 출력하는 방법을 보여줍니다.

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

위 코드에서 arr.length는 배열의 깊이를 나타내며, arr[i].length는 i번째 2차원 배열의 행의 수를 나타냅니다. 마지막으로 `arr[i][j].length`는 i번째 2차원 배열의 j번째 행의 열의 수를 나타냅니다. 이 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.

1 2 3 4 
5 6 7 8 
9 10 11 12 

13 14 15 16 
17 18 19 20 
21 22 23 24

위의 출력 결과에서 볼 수 있듯이, 3차원 배열은 다차원 배열의 개념을 확장하여 구현한 것으로, 배열 내부에 또 다른 배열이 존재하는 형태로 구현됩니다.

 

 

결론

Java에서 다차원 배열은 여러 차원으로 구성된 배열입니다. 2차원 배열은 행과 열로 구성되며, 3차원 배열은 행, 열, 그리고 깊이로 구성됩니다. 배열은 인덱스를 사용하여 요소에 액세스할 수 있으며, 다차원 배열에서는 해당 차원의 인덱스를 사용하여 요소에 액세스할 수 있습니다.

다차원 배열은 행렬, 이미지, 지도 등의 데이터를 표현하는 데에 유용합니다. 따라서 Java에서는 다차원 배열을 효율적으로 사용할 수 있도록 다양한 기능을 제공하고 있습니다. 이러한 기능들을 잘 이해하고 활용하면 다차원 배열을 효율적으로 다룰 수 있습니다.

320x100
728x90