GitHub ID : soohyun-dev
윤수현의 개발 공간
GitHub ID : soohyun-dev
전체 방문자
오늘
어제
  • 분류 전체보기 (918)
    • 성장기록 (49)
      • 성장기록 (3)
      • 우아한테크코스 (16)
      • 프로젝트 (15)
      • TIL (14)
      • 테오의 스프린트 (1)
    • 프로그래밍언어 (88)
      • C언어 (14)
      • HTML\CSS (12)
      • JavaScript (7)
      • React (23)
      • Python (11)
      • JAVA (14)
      • TypeScript (6)
    • 알고리즘 공부 (736)
      • 코드업 - 파이썬 (108)
      • 백준 - 파이썬 (468)
      • 백준 - 자바스크립트 (125)
      • 프로그래머스 - 파이썬 (1)
      • 프로그래머스 - 자바스크립트 (34)
    • 책 리뷰 (9)
      • 프로그래밍 (3)
      • 독서 (6)
    • 전자기기 (1)
    • 일상, 일기 (18)
    • 기술 세미나 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 백준파이썬
  • 영어
  • PYTHON
  • 코드업파이썬
  • 프론트엔드
  • 독해
  • javascript
  • 영어독해
  • 자바스크립트
  • 백준
  • 프로그래머스
  • 프로그래머스자바스크립트
  • 파이썬
  • 프로그래머스풀이
  • 프로그래밍언어
  • 백준풀이
  • 코테
  • 코딩테스트
  • 코딩
  • 코드업

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
GitHub ID : soohyun-dev

윤수현의 개발 공간

자바 JAVA - 다차원 배열
프로그래밍언어/JAVA

자바 JAVA - 다차원 배열

2021. 8. 24. 01:31

자바 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
    '프로그래밍언어/JAVA' 카테고리의 다른 글
    • 자바 - 다차원배열 (2) , 실습자료
    • 자바 JAVA - 클래스, 은행 계좌
    • 자바 JAVA - 배열
    • 자바 JAVA - 반복문 (for 문), 구구단
    GitHub ID : soohyun-dev
    GitHub ID : soohyun-dev
    환영합니다!😊 이곳은 저의 개발에 관한 내용들을 정리하는 공간입니다. 알고리즘 풀이에도 관심이 많아요. 좋은 하루 되세요~! github : soohyun_dev

    티스토리툴바