본문 바로가기

자바의 정석 정리

자바의 정석 - 5.2 다차원 배열

5.2.1 다차원 배열

  • 2차원 이상 배열
  • 메모리의 용량이 허용하는 한, 차원 제한은 없다.

5.2.2 2차원 배열 선언

  • 타입[][] 변수이름
    int[][] score;
  • 타입 변수이름[][]
    int score[][];
  • 타입[] 변수이름[]
    int[] score[];
  • 예제(4x3 배열 선언)
    int[][] score = new int[4][3];
    /*
    score[0][0] score[0][1] score[0][2]
    score[1][0] score[1][1] score[1][2]
    score[2][0] score[2][1] score[2][2]
    score[3][0] score[3][1] score[3][2]
    */

5.2.3 2차원 배열 초기화

  • 생성과 동시에 초기화 가능
    int[][] arr = new int[][]{ {1,2,3}, {4,5,6} };
    int[][] arr = { {1,2,3}, {4,5,6} };
  • 가시성을 위해 줄바꿈을 하는게 좋다
    int[][] arr = { {1,2,3}, {4,5,6} };
  • 반복문을 통한 초기화
    for(int i=0; i<arr.length; i++){
      for(int j=0; j<arr[j].length; j++){
          arr[i][j] = 0;
      }
    }
  • for-Each문을 통한 배열 각 요소들의 합
    for(int[] tmp : score){
      for(int i : tmp){
          sum += i;
      }
    }