2차원 배열

김나영·2023년 6월 11일
0

Java 문법 종합반

목록 보기
7/21

1. 생성

int[][] array = new int[][];

2. 초기화

2-1) 중괄호를 사용한 초기화

int[][] array = {
	{1, 2, 3},
	{4, 5, 6}
};

2-2) 반복문을 통한 초기화

int[][] array = new int[2][3]; // 최초 선언
for (int i = 0; i < array.length; i++) { // 0과 1 순환
for (int j = 0; j < array[i].length; j++) { // 0,1,2 순환
System.out.println("출력값 => " + i + ", " + j);
array[i][j] = 0;  // i, j 는 위 노란색 네모박스 안에있는 숫자를 의미하며 인덱스라고 함
                 // 초기값 0으로 세팅

3. 가변 배열

  • 행마다 다른 길이의 배열을 저장할 수 있는 배열
// 가변 배열
int[][] array = new int[3][]; // 최초의 감싸는 큰 배열은 3개 짜리가 왔는데 그 안에 들어가는 작은 배열들은 길이가 정해지지 않는 배열
// 배열 원소마다 각기 다른 크기로 지정
array[0] = new int[2];
array[1] = new int[4];
array[2] = new int[1];
// 중괄호로 초기화를 아예 해버릴 때도 가능!!
int[][] array2 = {
       {10, 20},
       {10, 20, 30, 40},
       {10}
};

4. 3차원 배열

  • 3차원 배열 선언은 2차원 배열 생성에 괄호를 하나 더해주면 됨

    • ex. int[][][] multiArrary
  • 초기화 할때는 중괄호를 더추가

  • {{{배열원소1}, {배열원소2}}, {{배열원소3}}} 와 같은 형태로 초기화 가능

// 중괄호 3개를 써서 3차원 배열 초기화를 할 수 있습니다.
int[][][] MultiArray = {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}};

5. 다차원 배열

  • 2차원 배열 조회할 때 2차원 인덱스를 가진만큼 2중 반복문을 통해 출력 가능

  • 2중 반복문을 통해 가변 배열도 출력 가능

// 가변 2차원 배열 조회
int[][] array = {
	{10, 20, 30},
	{10, 20, 30, 40},
	{10, 20}
};
for (int i = 0; i < array.length; i++) { // 1차원 길이
	for (int j = 0; j < array[i].length; j++) { // 2차원 길이
		System.out.println(array[i][j]); // 2중 반복문으로 i, j 인덱스 순회
	}
}
// 출력
10
20
30
10
20
30
40
10
20

ex) 최대값 구하기

int[] arr = {3, 2, 1, 5, 1};
// 최대값 초기화 세팅
int max = arr[0]; // 최대값은 0번째 자리 수
// 최대값 구하기 로직
for (int num : arr) { // int num = arr
   if (num > max) {
     max = num;
   }
}
 System.out.println("최대값 => " + max); // 5 출력

ex) 최소값 구하기

// 최소값 구하기
int[] arr = {3, 2, 1, 5, 1, 0};
// 최소값 초기화 세팅
int min = arr[0]; // 최소값은 0번쩨 자리 수
// 최소값 구하기 로직
for (int num : arr) { // int num = arr
   if (num < min) {
     min = num;
   }
}
  System.out.println("최소값 => " + min); // 0 출력

0개의 댓글