보기보기 개발 블로그

eclipse / 자바 다차원 배열 본문

Java

eclipse / 자바 다차원 배열

bokboks 2023. 3. 18. 00:04

안녕하세요

이전에 자바의 배열에 대하여 알아본 이후

이번 포스팅에선 업그레이드 된 다차원 배열에 대하여 알아보겠습니다.

 

 

eclipse / 자바 배열 (Array)

안녕하세요 이전에 자바 String 과 equals 에 대하여 알아보았는데요 이번 포스팅에서는 자바의 배열에 대하여 알아보겠습니다. eclipse / 자바 String , equals 안녕하세요 이전에 자바 null ,Nullpointer Except

stackbok.tistory.com


package javaexp.a05_reference;

public class A05_MultiArray {
	public static void main(String[] args) {
		/*
		 * # 다차원 배열
		 * 
		 * 1. 2차원 배열 이상의 배열
		 * 2. 자바는 1차원 배열을 이용하여 2차원 이상의 배열을 구현할 수 있다.
		 * 		int[][] 배열명 = new int[크기1][크기2];
		 * ex) 다차원 배열을 이해하기 위한 비유
		 * 		예시) 기차 : 1호차, 2호차 ...5호차
		 * 			1호차 안에 좌석 1~80번 
		 * 				1호차 안에 30번 좌석에 착석/예약..
		 */
		int[][] multiArry = new int[3][2];
		//cf) 기차로 비유하면 3개의 호차가 있고, 각 호차 안에 좌석 2개가 있는 경우..
		System.out.println("상위 차원의 크기: "+multiArry.length);
		System.out.println("하위 차원의 크기: "+multiArry[0].length);
		
		// 배열명[바깥쪽 상위 데이터 index][안쪽데이터index]
		// 학년 반 번 : 3차원
//				int[][][] student = new int [3][5][30];
//		student[0][0][20] =30;
//			student라는 배열에 최상위 항목의 1번째 데이터 안에
//			차상위 항목 1번째 데이터 안에
//			하위 항목에 21번째 데이터에 30번을 할당.
		
		
		multiArry[0][0] = 25;
		multiArry[0][1] = 55;
		multiArry[1][0] = 35;
		multiArry[1][1] = 45;
		multiArry[2][0] = 65;
		multiArry[2][1] = 75;
		for(int idx=0;idx<multiArry.length;idx++) {
			for(int jdx=0;jdx<multiArry[idx].length;jdx++) {
				System.out.println("행열["+idx+"]["+jdx+"]:"
			+multiArry[idx][jdx]);
			}
		}
		//ex) 2차원 배열로 번호별로 국어/영어/수학점수를 할당했을 때..
		//		3명의 국어/영어/수학 .. 출력
		
		int[][]records1 = {
				{80,90,90}, //첫 번째 학생의 국어, 영어 ,수학점수
				{70,80,90}, //두 번째 학생의 국어, 영어 ,수학점수
				{70,70,80}  //세 번째 학생의 국어, 영어 ,수학점수
		};
		System.out.println("1차원(밖에있는 데이터 크기):"+records1.length);
		System.out.println("2차원(안쪽에있는 데이터 크기):"+records1[0].length);
		System.out.println("첫번째의 첫번째:"+records1[0][0]);
		//첫번째 학생의 국어점수를 호출
		System.out.println("세번째의 두번째:"+records1[2][1]);
		//세번째 학생의 영어 점수
		//[2] : 세번째 학생 index는 0부터 시작하기 때문에
		//[1] : 두번째 과목인 영어점수
		for(int idx=0;idx<records1.length;idx++) { // 학생 단위로 반복문 loop
			System.out.println(idx+1+"번째의 학생의 성적");
			for(int jdx=0;jdx<records1[idx].length;jdx++) { //과목 단위로 반복문 loop
				System.out.println(jdx+1+"번째 과목 점수: "+records1[idx][jdx]);
			}
		}
		int[][]records2 = new int[3][3];
		records2[0][0] = 80;
		records2[0][1] = 90;
		records2[0][2] = 90;
//		--------------------------
		records2[1][0] = 70;
		records2[1][1] = 80;
		records2[1][2] = 90;
//		--------------------------
		records2[2][0] = 70;
		records2[2][1] = 70;
		records2[2][2] = 80;
		System.out.println("1차원(밖에있는 데이터 크기):"+records2.length);
		}
	}

이상으로 자바의 다차원 배열에 대하여 알아보았습니다.

감사합니다.

'Java' 카테고리의 다른 글

eclipse / 클래스 구성요소  (0) 2023.03.22
eclipse / 객체 생성과 클래스 변수  (0) 2023.03.22
eclipse / 자바 배열 (Array)  (0) 2023.03.18
eclipse / 자바 String , equals  (0) 2023.03.17
eclipse / 자바 Null, NullPointer  (0) 2023.03.17