Java - 06

하승·2022년 7월 11일
0

웹 개발반 - Java

목록 보기
6/19
post-thumbnail

2차원 배열

배열 안에 배열이 있는 형태

2차원 배열 선언

		int[][] arrData = {
				{10,20,30},
				{40,50,60}
		};
  1. String [][] arData = new String[1][5];

2차원 배열의 길이

2차원배열명.length : 행의 개수
2차원배열명[행번호].length : 행에 만들어져 있는 소배열의 길이

2중 for문(nested for문)

for문 안에 for문이 있는 형태
바깥쪽에 있는 i for문은 다음 반복으로 넘어가기 위해서
안쪽에 있는 수행할 문장들을 한번씩 다 마쳐야 한다.
안에 있는 수행할 문장중에 j for문이 있으므로, 그 j for문이
완벽히 모두 완료되어야 i for문 입장에서는 반복시 수행할 문장을
마친것이 되고, 그 이후에야 다음 반복으로 넘어갈 수 있게된다.
따라서 가장 안쪽에 있는 문장은 (i for문 반복횟수)*(j for문 반복횟수)
만큼 수행된다.

i	j
0	0 1 2
1	0 1 2
for (int i = 0; i < arrData.length; i++) {
			for (int j = 0; j < arrData[i].length; j++) {
				System.out.println(arrData[i][j]);
			}
		}

실습 예제

		//국어점수, 영어점수, 수학점수 입력받아서 총점과 평균점수 출력하기
		//국어점수 : 100
		//영어점수 : 80
		//수학점수 : 90
		
		//총점 : 270
		//평균 : 90.0
        
        String[] subject = {"국어","영어","수학"};
		int[] score = new int[subject.length];
		for (int i = 0; i < score.length; i++) {
			System.out.print(subject[i]+"점수 : ");
			score[i] = sc.nextInt();
		}
		int tot = 0;
		double avg = 0.0;
		for (int i = 0; i < score.length; i++) {
			tot += score[i];
		}
		avg = tot/(double)score.length;
		
		System.out.println("총점 : "+tot);
		System.out.printf("평균 : %.1f\n",avg);

실행 결과

profile
화이팅!

0개의 댓글