English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 튜토리얼

Java 흐름 제어

Java 배열

Java 대상지향(I)

Java 대상지향(II)

Java 대상지향(III)

Java 예외 처리

Java 목록(List)

Java Queue(큐)

Java Map集合

Java Set集合

Java 입력/출력(I/O)

Java Reader/Writer

Java 다른 주제

Java 다차원 배열

이 튜토리얼에서는 예제를 통해 다음과 같이 사용을 배웁니다.2다차원 배열과3Java 다차원 배열.

학습하기 전에 다차원 배열에 대해 이해해야 합니다.Java 배열

다차원 배열은 배열의 배열입니다. 다차원 배열의 각 요소는 본인이 배열입니다. 예를 들어,

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

 여기서는 a라는 이름의 다차원 배열을 생성했습니다. 이는 이차원 배열로, 최대로 수용할 수 있는 요소는12요소가 있습니다.

이차원 배열

 기억해야 할 것은 Java가 0에서 시작하는 기본 인덱싱을 사용한다는 것입니다. 즉, Java에서 배열의 인덱싱은 0부터 시작하며,1시작.

다시 다차원 배열의 예제를 들어보겠습니다. 이번에는 다음과 같은 다차원 배열을 생성하겠습니다.3다차원 배열. 예를 들어,

String[][][] data = new String[3][4][2];

 여기서 data는 세 차원 배열입니다. 최대로 수용할 수 있는 요소는24(3*4*2개의 String 타입의 요소를 수용할 수 있습니다.

Java에서 이차원 배열을 초기화하는 방법은 무엇인가요?

이렇게 Java에서 이차원 배열을 초기화하는 방법입니다.

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

처럼, 다차원 배열의 각 요소는 본인이 배열입니다. 그리고 C와 다르게, / C ++다르게, Java에서 다차원 배열의 각 행은 다른 길이를 가질 수 있습니다.

이차원 배열의 초기화

예제: 이차원 배열

class MultidimensionalArray {
    public static void main(String[] args) {
        //이차원 배열을 생성합니다
        int[][] a = {
            {1, 2, 3}, 
            {4, 5, 6, 9}, 
            {7}, 
        };
      
        //각 행의 길이를 계산합니다
        System.out.println("제1행의 길이: " + a[0].length);
        System.out.println("제2행의 길이: " + a[1].length);
        System.out.println("제3행의 길이: " + a[2].length);
    }
}

출력

제1행의 길이: 3
제2행의 길이: 4
제3행의 길이: 1

위의 예제에서는 a라는 이름의 다차원 배열을 생성했습니다. 다차원 배열의 각 구성 요소도 배열입니다(a[0],[1]와 a[2]도 배열입니다).
여기서는 각 행의 길이를 계산하기 위해 length 속성을 사용합니다.

예제: 루프를 사용하여 출력2다차원 배열의 모든 요소

class MultidimensionalArray {
    public static void main(String[] args) {
        int[][] a = {
            {1, -2, 3}, 
            {-4, -5, 6, 9}, 
            {7}, 
        };
      
        for(int i = 0; i < a.length; ++i) {
            for(int j = 0; j < a[i].length; ++j) {
                System.out.println(a[i][j]);
            }
        }
    }
}

출력

1
-2
3
-4
-5
6
9
7

또한 사용할 수 있습니다for...each 루프다차원 배열의 요소에 접근할 수 있습니다. 예를 들어,

class MultidimensionalArray {
    public static void main(String[] args) {
        //이차원 배열을 생성합니다
        int[][] a = {
            {1, -2, 3}, 
            {-4, -5, 6, 9}, 
            {7}, 
        };
      
        //먼저 단일 배열에 대한 for...each 루프를 사용합니다
        //이차원 배열에서
        for(int[] innerArray : a) {
            //두 번째 for...each 루프로 행 내의 각 요소에 접근합니다
            for(int data : innerArray) {
                System.out.println(data);
            }
        }
    }
}

출력

1
-2
3
-4
-5
6
9
7

 위의 예제에서는 a라는 이름의 이차원 배열을 생성한 후 for 문과 for...each 루프를 사용하여 배열의 각 요소에 접근했습니다.

Java에서 삼차원 배열을 어떻게 초기화할 수 있을까요?

 Java에서 삼차원 배열을 어떻게 초기화할 수 있을까요?3d 배열. 예를 들어,2d 배열의3d 배열. 예를 들어,

// test는 3d 배열
int[][][] test = {
        {
          {1, -2, 3}, 
          {2, 3, 4}
        }, 
        { 
          {-4, -5, 6, 9}, 
          {1}, 
          {2, 3}
        } 
};

 기본적으로3d 배열은2d 배열의 배열. 삼차원 배열의 행도 두차원 배열처럼 길이가 달라질 수 있습니다.

예제:3차원 배열

class ThreeArray {
    public static void main(String[] args) {
        // 삼차원 배열 생성
        int[][][] test = {
            {
              {1, -2, 3}, 
              {2, 3, 4}
            }, 
            { 
              {-4, -5, 6, 9}, 
              {1}, 
              {2, 3}
            } 
        };
        //for..each 루프 반복3d 배열의 요소
        for (int[][] array2D: test) {
            for (int[] array1D: array2D) {
                for(int item: array1D) {
                    System.out.println(item);
                }
            }
        }
    }
}

출력

1
-2
3
2
3
4
-4
-5
6
9
1
2
3