각진 세상에 둥근 춤을 추자

[Java] 다차원 배열 본문

Java

[Java] 다차원 배열

circle.j 2022. 9. 19. 10:02

행 하나로만 이루어진 배열은 '1차원 배열'이다.

프로그램에서는 바둑이나 체스 게임, 네비게이션 지도 등을 구현하는 등 평면을 구하기 위해 2차원 배열을 사용하거나, 

공간 개념을 구현하기 위해 3차원 배열을 사용하기도 한다. 

 


(1) 2차원 배열 

 

다음은 2행 3열의 2차원 배열을 선언하는 코드와 논리 구조이다.

 

 

 

 

arr [0][0] arr [0][1] arr [0][2]
arr [1][0] arr [1][1] arr [1][2]

 

 

2차원 배열을 초기화하려면 다음과 같이 행과 열 개수에 맞추어 {중괄호} 안에 콤아(,)로 구분해 값을 적는다.

 

 

 

 

 

이 내용을 코드로 구현해 본다.

 

package ch7_2;

public class TwoDimension {
	public static void main(String[] args) {
		
		int [][] arr = { {1,2,3}, {4,5,6} };
		
		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(); // 행 출력 끝난 후 한 줄 띄움
		}
		
	}
}

 

 

추가로 2차원 배열의 각 행의 길이와 열의 길이를 출력해 본다.

 

package ch7_2;

public class TwoDimension {
	public static void main(String[] args) {
		
		int [][] arr = { {1,2,3}, {4,5,6} };
		
		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(); // 행 출력 끝난 후 한 줄 띄움
		}
		
		System.out.println(arr.length);		// 행의 길이
		System.out.println(arr[0].length);	// 열의 길이
	}
}

 

 

 

(2) 3차원 배열 

 

 

int [][][] arr = {  {{},{},{}}, {{},{},{}}, {{},{},{}}  };
//3차원 배열 (공간)
		
	int[][][] arr3d = {{{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}}};
		
		System.out.println();
		
		for(int f=0; f<3; f++) {
			for(int a=0; a<3; a++) {
				for (int b=0; b<3; b++) {
					System.out.printf("arr3d[%d][%d][%d]: %d\n", f,a,b, arr3d[f][a][b]);
				}
			}
			
		}

 

'Java' 카테고리의 다른 글

[Java] ArrayList - 학생 성적 출력 프로그램  (0) 2022.09.19
[Java] ArrayList 클래스 사용하기  (0) 2022.09.19
[Java] 향상된 for문 사용하기  (0) 2022.09.19
[Java] 배열 복사하기  (0) 2022.09.19
[Java] 객체 배열  (0) 2022.09.18