JAVA
가변 배열(dynamic array) | 21/11/29
S.I.B
2022. 1. 7. 20:18
코드 작성
package ex_Array; public class Ex1 { public static void main(String[] args) { /* * 가변 배열(dynamic array) * * - 다차원 배열에서 마지막 차수의 크기를 지정하지 않고 각각 다르게 지정 - 2차원 배열을 생성할 때 열의 길이를 * 명시하지 않음으로써, 행마다 다른 길이의 배열 요소를 저장 */ // 2차원 배열 3행 크기의 가변 배열 생성 int[][] arr = new int[3][]; arr[0] = new int[2]; // 1행에 2열의 크기 생성 // 2행에 4열 크기 / 3행에는 1열의 크기 arr[1] = new int[4]; arr[2] = new int[1]; // 행의 인덱스 0 ~ 행 크기 -1 만큼 반복 for (int i = 0; i < arr.length; i++) { System.out.println("arr 배열의 " + (i + 1) + "행의 크기 : " + arr[i].length); } // 가변 배열을 선언과 동시에 초기화 블록으로 초기화 int[][] arr2 = { { 10, 20 }, // 1행의 데이터 { 10, 20, 30, 40 }, // 2행의 데이터 { 10 } // 3행의 데이터 }; for (int i=0; i<arr.length; i++) { for (int k=0; k<arr[i].length; k++) { // System.out.print("arr2[" + i + "][" + k + "] = " + arr2[i][k] + " "); System.out.printf("arr2[%d][%d]= %d ",i, k, arr2[i][k]); } System.out.printf("\n"); } } }
가변 배열의 설명과 예시
출력 결과
arr 배열의 1행의 크기 : 2
arr 배열의 2행의 크기 : 4
arr 배열의 3행의 크기 : 1
arr2[0][0]= 10 arr2[0][1]= 20
arr2[1][0]= 10 arr2[1][1]= 20 arr2[1][2]= 30 arr2[1][3]= 40
arr2[2][0]= 10
나의 소감
이런걸 어디에서 써먹을 수 있을까??
음.... 약간 사람마다 가진 자산의 종류??
A 라는 사람은 "집"만 가지고 있고
B 라는 사람은 "집"과 "차" 가 있고
C 라는 사람은 "집"과 "차"와 "빌딩"을 가지고 있을때
3명의 사람의 자산을 불러올 때?
(정확한 개념 아님 그냥 100% 내생각...)