본문 바로가기
안 씀/java-개념

다차원 배열

by unhyepnhj 2024. 5. 6.

2차원 배열

- 1차원 배열과 마찬가지로 레퍼런스 변수 선언 후 배열 생성

 

1. 배열 선언

int intArray[][];		//이렇게나
int[][] intArray;		//이렇게 선언

 

2. 배열 생성

 

intArray = new int[2][5];

 

- 2차원 배열에서 행의 각 원소는 1차원 배열에 대한 레퍼런스가 됨

※행(row)-가로, 열(column)-세로

 

+ 선언과 생성 동시에

int[][] intArray = new int[2][5];		//변수 선언과 배열 생성 동시에

 

배열 초기화

int[][] intArray = {{0, 1, 2}, {3, 4, 5}, {6, 7, 8};		//3*3 배열 생성

 

2차원 배열의 length

- i.length: 2차원 배열의 행의 개수

- i[n].length: n번째 행의 열의 개수

int[][] intArray = new int[2][5];

i.length;	//2
i[0].length;	//5
i[1].length;	//5

 


비정방형 배열 

- 정방형 배열: 각 행의 열 개수가 모두 동일한 배열

- 비정방형 배열: 행마다 열의 개수가 서로 다른 배열

 

비정방형 배열 생성

int[][] intArray = new int[4][];	//열 크기 설정하지 않고 행만 설정
intArray[0] = new int[1];			//첫째 행 열 개수 1
intArray[1] = new int[2];			//둘째 행 열 개수 2
intArray[2] = new int[3];			//셋째 행 열 개수 3
intArray[3] = new int[4];			//넷째 행 열 개수 4

 

정방형 배열
비정방형 배열

비정방형 배열의 length

- i.length: 2차원 배열의 행의 개수

- i[n].length: n번째 행의 열의 개수

- 어떤 메소드가 배열을 매개변수로 받을 때 배열이 비정방형인지 정방혀인지 표시되지 않음

- 항상 length 필드를 사용하여 각 행의 열의 개수를 파악해야 함

 

+ 배열 생성 시 초기화를 통해 비정방형 배열을 생성 가능

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

 


예제 3-10 2차원 배열에 학년별 1, 2학기 성적을 저장하고 4년간 전체 평점 평균을 출력

 

예제 3-11 다음 그림과 같은 비정방형 배열 생성 후 접근

'안 씀 > java-개념' 카테고리의 다른 글

main() 메소드  (0) 2024.05.10
메소드에서 배열 리턴  (0) 2024.05.08
1차원 배열  (0) 2024.05.04
반복문  (0) 2024.05.02
조건문  (0) 2024.04.30