JAVA 제어문 (2) 반복문 ( for문 , while문 )
1) for문
for(초기식; 조건식; 증감식;) {
수행 문장;
}
1회전:
초기식 확인->조건식 확인
조건식 true? 문장 수행
조건식 false? 수행하지 않음
2회전:
증감식 연산->조건식 확인
조건식 true? 문장 수행
조건식 false? 수행하지 않음
** 2회전 이상부터는 모두 2회전과 동일
조건식 false 나오면 수행 종료
ex)
2) while문
while(조건식) {
수행될 문장;
[증감식 or 분기문];
}
조건식 true일 때 문장 수행.
문장 수행 후 조건식 다시 확인.
true면 수행 반복.
조건식이 false가 되면 반복문 종료
** { } 안에 조건을 벗어나게 할
연산(증감식, 분기문) 필요
ex)
do {
수행될 문장;
[증감식 or 분기문];
} while(조건식);
do 안의 내용 먼저 실행
조건식 true? 문장 수행
조건식 false? 종료
while 뒤에 ; 꼭 필요
* { } 조건 벗어나게 할 연산(증간식, 분기문) 필요
**while과 do~while 차이점?
do~while은 조건문이 true가 아니더라도
무조건 한 번 이상 수행
3. 중첩 반복문
1)
for(초기값1; 조건식1; 증감식1) {
수행될 문장1;
for(초기값2; 조건식2; 증감식2) {
수행될 문장2;
}
수행될 문장3;
}
for문 진입 후 문장1 먼저 수행
두번째 for문 진입 후
조건식2가 false 될 때 까지 문장2 수행
그 후 문장 3 수행하고
조건식 1로 돌아와 true면 다시 반복
ex)
2)
for(초기값1; 조건식1; 증감식1) {
수행될 문장1;
for(초기값2; 조건식2; 증감식2) {
수행될 문장2;
break;
}
수행될 문장3;
[break;]
}
두 번째 for문 break를 만날 경우?
반복문을 나가 문장3 수행 후
다시 첫 번째 for문 실행.
마지막 break가 있다면 문장3 수행 후
for문 완전히 빠져나감