Java 및 JSP

[Java] 향상된 For 문

jane.dev 2021. 7. 30. 23:53
반응형
향상된 For 문(Enhanced For Loop)
기존의 For문의 불필요한 작성을 없앤 For 문
길이와 증가하는 양을 정의할 필요가 없음

 

배열을 생성 후 출력

int [] arr = {1, 2, 3, 4, 5};

 

기존 For 문

for(int a = 0; a < arr.length; a++){
	System.out.println(arr[a]);
}

변수 a를 선언 후 초기화하여, 길이와 증가하는 양을 지정해서 반복을 진행

 

향상된 For 문

for(int a : arr){
	System.out.println(a);
}

배열을 대입 받을 변수만 초기화하면 배열을 대입받을 수 있음

 

예제)

7명 학생의 국어, 영어, 수학 과목 점수를 확인하여 각 과목별 평균점수 구하기

-------------------------------

kor = 10, 28, 39, 74, 65, 90, 98

eng = 62, 42, 68, 31, 80, 77, 45

math = 96, 23, 52, 82, 72, 31, 58

-------------------------------

 

각 과목별로 배열 생성

int [] kor = {10, 28, 39, 74, 65, 90, 98};
int [] eng = {62, 42, 68, 31, 80, 77, 45};
int [] math = {96, 23, 52, 82, 72, 31, 58};

 

각 과목의 합을 구할 변수를 초기화

int korSum = 0;
int engSum = 0;
int mathSum = 0;

 

향상된 For 문을 이용해 각 과목의 총합 구하기

for(int k : kor){
	korSum += k;
}
for(int e : eng){
	engSum += e;
}
for(int m : math){
	mathSum += m;
}

 

각 과목의 총합을 배열의 길이로 나누어 각 과목의 평균점수를 구하기

System.out.println("국어의 평균점수: " + (korSum / kor.length));
System.out.println("영어의 평균점수: " + (engSum / eng.length));
System.out.println("수학의 평균점수: " + (mathSum / math.length));