230719 TIL Chapter 6. 제어문 중 반복문 ( 중첩 for문 ), ( while문 ), ( do ~ while문 ) 분기문 ( break ), ( continue )

최규연·2023년 7월 19일
0

TIL

목록 보기
6/57

오늘은 어제에 이어 제어문 중 반복문과 분기문을 나갔다.

중첩 for문

중첩 for문은 중첩 if문처럼 for문안에 for문이 들어가는 형식으로

중첩 for문 작성법

for(초기값1; 조건식1; 증감식1) {
		수행될 코드1;
		for(초기값2; 조건식2; 증감식2) {
				수행될 코드2;
		}
		수행될 코드3;
}

진행은 먼저 가장 위에 있는 for문에 들어가 코드1을 수행하고 두번째 for으로 넘어가게 된다.
이후 조건식 2가 false가 될 때까지 코드2를 수행 후 나오면 코드3을 수행하고 조건식 1로 돌아와 true일때 다시 반복한다.

while문

반복문 중 하나인 while은 for과 다른 점이 있는데 간단하게 설명해서 for은 반복이지만 횟수가 정해져 있고 while문은 횟수가 정해져 있지 않다.

while문 작성법

while(조건식) {
		수행될 코드;
		[증감식 or 분기문];

}

조건식이 true일 때 수행 될 코드를 실행하고 코드 실행이 끝나면 조건식을 다시 확인 후 true일땐 다시 실행, false일땐 반복문 종료가 된다.
{ } 안엔 조건을 벗어나게 할 연산 (증감식, 분기식)이 필요하다.

do ~ while문 작성법

do {
		수행될 코드;
		[증감식 or 분기문];
} while(조건식);

do ~ while문은 do 안의 내용 먼저 실행 후 조건식을 확인하고 true라면 문장 수행, false면 탈출한다.
while문과 do ~ while문의 차이는 do ~ while은 조건문이 true가 아니여도 무조건 한번 이상 수행된다.


분기문 break

반복문에서 braek문 자신이 포함된 가장 가까운 반복문을 빠져나가는 구문으로 탈출 후 가까운 코드가 수행된다.

break문 예시

for(int i = 1;; i++) {
		System.out.println(i + " 출력");

		if(i >= 10) {
				break;
		}
}

중첩 반복문에서의 break문 예시

for(초기값1; 조건식1; 증감식1) {
		수행될 코드1;
		for(초기값2; 조건식2; 증감식2) {
			수행될 코드2;
			break;
		}
		수행될 코드3;
		[break;]
}

두번째 for문에 break를 만날 경우 반복문을 탈출해 수행될 코드3을 수행하고 다시 첫번째 for문을 실행하지만 마지막에 break가 있었다면 수행될 코드3을 수행 후 for문을 완전히 빠져나가게 된다.

분기문 continue

반복문 내에서만 사용 가능하며 반복문 실행 시 continue 아래 부분은 실행되지 않고 반복문을 다시 실행한다.
쉽게 설명하면
break는 반복문을 바로 멈추고
continue는 다음 반복으로 넘어간다.

continue문 예시

for(int i = 1; i <= 10; i++) {
		if(i % 2 == 0) {
				continue;
		}
		System.out.println(i + " 출력");
}

위 코드를 출력해보면 2의 배수는 continue로 출력되지 않고 1 3 5 7 9만 출력되게 될것이다.
만약 continue가 아니라 break였다면 1출력되고 2에서 break되기 때문에 콘솔창엔 1만 출력을 예상해 볼 수 있다.

3개의 댓글

comment-user-thumbnail
2023년 7월 19일

이렇게 유익한 내용을 공유해주셔서 감사합니다.

답글 달기
comment-user-thumbnail
2023년 7월 19일

젊은.친구가.꾸준하고.영특하다.
요즘절믄애들은.龍頭蛇尾하는.것들이.많은데.보기드문.청년이다

1개의 답글