티스토리 뷰

 

 

 

 

1. 이차원 배열 선언하기

 

2차원 배열은 [ ] (대괄호)를 두 번 사용하여 선언함!

첫 번째 대괄호에는 [세로 크기=행], 두 번째 대괄호에는 [가로 크기=열]를 지정한다.

*일반적으로 2차원 공간은 가로x세로로 표기하지만, 배열로 만들 때는 세로x가로로 표기한다.*

 

자료형 배열이름[][];
자료형[] 배열이름[];
자료형[][] 배열이름;

int arr1[세로][가로];
int[세로] arr2[가로];
int[세로][가로] arr3;


 2. 이차원 배열 할당 (크기 지정)
 

행크기와 열크기 동시에 지정 가능함!

배열이름 = new 자료형[행크기][열크기];

 

arr3 = new int[2][3];

 

 

3. 2차원 배열을 선언하면서 초기화도 같이 할 수 있다.

{ } (중괄호)안에 가로 요소들을 먼저 묶어주고, 세로값 만큼 {}생성하면 된다/

* 자료형 배열이름[세로크기][가로크기] = { { 값, 값, 값 }, {값, 값, 값} };

 

 

 

arr이라는 이름의 배열에 int변수를 지정해주고, 이차원 배열을 생성한다.

그리고 3행 5열의 데이터를 담을 수 있는 상자를 만들어 준다.

 

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

 

 

System.out.println(arr);System.out.println(arr[0]);          System.out.println(arr[0][0]);    // 0행 0열의 값 = 0

 

 

 

4. 각 행과 열의 길이를 구할 수도 있다!

 

(1) 행의 길이 구하기System.out.println("행의 길이 : " + arr.length);

 

(2) 각 행별 열의 길이 구하기System.out.println("0행의 열의 길이 : " + arr[0].length);        // 결과 : 5

 

 

 

 

 

 

5. 반복문을 이용해서 출력할 수 있음!

바깥쪽 for문  : 행에 대해 지정 (0행 ~ 2행) == (0행 ~ 행의 크기 -1)
안쪽 for문      : 열에 대해 지정 (0열 ~ 4열) == (0열 ~ 각행별 열의 크기 -1)

 

for(int i=0; i<arr.length; i++){     for(int j=0; j<arr[i].length; j++) {          // arr.length반복문 [행의 크기] => arr[i].length반복문 [열의 크기] => ....            System.out.println(arr[i][j]);        // arr[행의 값][열의 값] 계속 출력}안쪽 for문 끝나는 시점 = 한 행이 끝났을 때이다! 따라서 다시 for문이 돌아 그 다음행으로 넘어가기 전에 줄바꿈을 넣어줘야 한다.

System.out.println();

 

 

반응형

'language > java' 카테고리의 다른 글

정적 팩토리 메서드 (Static Factory Method) 사용하기  (2) 2023.04.05
인터페이스란? 추상클래스와 인터페이스의 차이점은?  (0) 2021.07.23
추상 클래스란?  (0) 2021.07.22
배열 array _1  (0) 2021.02.03
배열 array  (0) 2021.02.03