자바의 다차원 배열(2차원 배열) 개념 및 실습

Yeppi's 개발 일기·2022년 5월 18일
0

JAVA

목록 보기
10/27

1. 다차원 배열이란?

  • 2차원 이상으로 구현 된 배열
  • 평면(이차원 배열) 또는 공간(삼차원 배열)을 활용한 프로그램 구현
  • 행을 기준으로 열이 도는 형태

📌 다차원 배열 실습 📌

int[][] arr = {{1, 2, 3}, {4, 5, 6, 7}};
int i, j;
    
for(i = 0; i < arr.length; i++) { // 행의개수
	for(j = 0; j < arr[i].length; j++) { // 열의개수
		System.out.print(arr[i][j] + " ");
	}
    
    // 행 하나가 끝나면, i번째의 length가 얼만지 출력 
	System.out.println(", \t" + arr[i].length); // \t는 탭키
	System.out.println();
}

출력 결과

1 2 3 , 	3

4 5 6 7 , 	4


2. 2차원 배열

1) 배열 선언

자료형[ ][ ] 배열 변수;



2) 객체 생성

자료형[ ][ ] 배열이름 = new int [ 행개수 ][ 열개수 ]



📌 2차원 배열 실습 📌

2차원 배열 객체 생성

  • 첫 번째 줄의 세 번째 인덱스에 접근하여 13라는 값을 할당
    list[0][2] = 13;
		int[][] list = new int[2][4];
        
		list[0][0] = 11;
		list[0][1] = 12;
		list[0][2] = 13;
		list[0][3] = 14;

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


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

출력결과

11 12 13 14 15 
21 22 23 24 25

2차원 배열 객체 생성 + 초기화

  • 1차원 배열처럼 객체 생성과 동시에 초기화
int[][] list  = {{11,12,13,14,15},
					{21,22,23,24,25}};
                    
for (int i = 0; i < 2; i++) {
	for (int j = 0; j < 4; j++) {
		System.out.print(list[i][j] + " ");
	}
	System.out.println("");
}

출력결과

11 12 13 14 
21 22 23 24 


3. 3차원 이상인 다차원 배열

1) 다차원 배열

배열에 또 다른 배열

  • 3차원 이상의 배열을 테이블 구조로 표현 어려움

  • 이런 배열들은 배열에 대한 또 다른 배열 형태로 접근


📌 다차원 배열 실습 📌

int[][] list = { { 11, 22, 33, 44 }, { 99, 98 }, { 01, 02, 02 } };

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

출력결과

0 0 == 11	0 1 == 22	0 2 == 33	0 3 == 44	
1 0 == 99	1 1 == 98	
2 0 == 1	2 1 == 2	2 2 == 2	
profile
imaginative and free developer. 백엔드 / UX / DATA / 기획에 관심있지만 고양이는 없는 예비 개발자👋

0개의 댓글