JAVA
17. 2차원 배열
NamGH
2023. 7. 31. 15:16
2차원 배열은 배열을 행렬형식으로 짜는것이며
int[] arr = {{1},{2},
{3},{4}};
이런식으로 변수 선언을 하는것이다
int[][] arr = {
{10,20},
{11,22,33,43},
{12,32,43},
{32,48}
};
System.out.println("arr: " + arr);
System.out.println("arr[0]: " + arr[0]);
System.out.println("arr[1]: " + arr[1]);
System.out.println(arr[0][0]);
//System.out.println(arr[3][2]);
System.out.println(arr.length);
System.out.println(arr[0].length);
System.out.println(arr[1].length);
System.out.println(arr[2].length);
System.out.println(arr[3].length);
int i, j;
for(i = 0; i < arr.length; i++) {
for(j = 0; j < arr[i].length; j++) {
System.out.print(arr[i][j] + "\t");
}
System.out.println();
}
위의 코드의 경우 length를 이용하여 arr안에 있는 배열들을 호출하는 코드인데 마지막 조건문을 보면 조건식이
(i = 0; i < arr.length; i++)으로 되어있는데 arr.length는 세로의 길이가 4기때문에 숫자 4와 같음을 알수 있고
두번째 조건문인 (j = 0; j < arr[i].length; j++)인 경우에 j가 i의 length인 행렬의 갈이에 맞게 출력시키기 때문에 각각 다른 길이를 가졌어도 그에 맞춰서 출력이 됨으로 첫번째는 2의 길이를 받고 두번째는4 이런식으로 길이를 재기때문에 모든 배열이 출력됨을 알 수 있다.
arr: [[I@6504e3b2
arr[0]: [I@515f550a
arr[1]: [I@626b2d4a
10
4
2
4
3
2
10 20
11 22 33 43
12 32 43
실행시키면 다음과 같은 결과가 나옴을 알 수있다.