자바 JAVA - 다차원 배열
다차원 배열에 대해서 알아보자.
이전에는 1차원의 배열에대해서만 알아보았는데,
이번에는 다른차원의 배열들을 선언하고 다뤄보자.
이 다차원 배열을 이해하려면 행렬에 대해 잘 이해하고 있으면 도움이 많이된다.
특히, 3차원 배열 같은 경우 글로만으로 이해하기가 약간 힘들수도있다.
약간 상상력? 그 3차원적인 구조를 상상해서 값을 유추할 수 있으면 이해가 쉽다.
(나는 보통 8각형의 도형을 생각해서 이해한다.)
예를 들어 2차원의 배열을 선언해보자.
2x5 행렬의 형태를 가진 배열을 선언해볼것이다.
참고로 2 x 5 행렬은
이런식으로 2개의 행과 5개의 열을 가지게 된다.
그러면 5 x 2행렬은?
당연히 이렇게 5개의 행과 2개의 열을 가지게 된다.
이 구조를 제대로 이해하고 있어야한다.
그러면 이제 한번 만들어보자.
이런식으로 선언을 해주게되면 MultiArr 이라는 변수는 2 x 5 의 배열을 갖게 된다.
이때 각 자리의 값은 비어져 있다.
1 | 2 |
3 | 4 |
5 | 6 |
7 | 8 |
9 | 10 |
그러면 이렇게 각 자리에 값이 선언된 5X2행렬을 만들려면 어떻게 해야할까?
방법은 간단하다.
이렇게 선언해주면 된다.
첫번째 괄호가 첫번째행,
두번째 괄호가 두번째행 ... 에 맞게 선언된다.
잘 생성 되었는지 확인해보면,
이렇게 각 행, 열에 맞게 잘 생성되어있다.
1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 |
이렇게 2 x 5 행렬도 만드는 법은 동일하다.
이렇게 첫번째 행, 두번째 행에 맞춰서 요소들을 선언해주면 된다.
이렇게 값이 잘 생성되어 있다.
3차원 배열
3차원 배열은 약간의 상상력이 필요하다.
x, y, z 축을 가진 제1팔분공간을 생각해보자.
(제 1 팔분공간이란, x, y, z 축을 가진 좌표평면에서 x, y, z 의 값이 모두 양수인 공간이다.
2차원 좌표평면에서 1사분면이 3차원 좌표평면에서 z축을타고 양수방향으로 올라가는 공간을 생각하면 된다.)
이 공간이 제 1팔분공간이다.
그렇다면 이제 2 x 5 x 2 배열을 만들어볼 것이다.
z축으로 2칸, x축으로 두칸, y축으로 5칸을 가진 행렬을 생각하면된다.
이렇게 선언을 해주면 되겠다.
이 역시 각 자리에 값은 비어있는 상태이다.
그러면 총 20칸이니 각 자리 순서에 맞는 숫자를 입력해보자.
이렇게 크게 두 괄호로 나누게 되면 z축에 두칸, 0층 1층으로 나뉘게 된다.
이후 안에 괄호에서는 각층에 2x5 배열이 생기게 된다.
이 그림을 떠올리면 이해하기 쉽다
MultiArr 변수에서 [][][] 칸에 해당하는 것은
[z축] [x축] [y축] 이라고 생각하면 된다.
각 칸에 들어있는 숫자들을 출력해보면,
이렇게 잘 입력되어있는 것을 알 수 있다.
'프로그래밍언어 > JAVA' 카테고리의 다른 글
자바 - 다차원배열 (2) , 실습자료 (0) | 2021.09.29 |
---|---|
자바 JAVA - 클래스, 은행 계좌 (0) | 2021.08.26 |
자바 JAVA - 배열 (0) | 2021.08.23 |
자바 JAVA - 반복문 (for 문), 구구단 (0) | 2021.08.21 |
자바 JAVA - 반복문 (while 문), 구구단 (0) | 2021.08.21 |