break 문

for 문, while 문, 그리고 switch 문에서 현재 실행을 멈추고 자기를 감싸고 있는 블록 밖으로 빠져나오는 기능을 합니다.

바로 while 문에서 break 문을 사용하는 코드를 살펴보겠습니다.

int value = 10;
int i = 1;
int sum = 0;

while(true) {
	sum += i;
    if(++i > value) break;
}

System.out.println(sum);

// 결과
55

위의 코드는 전에 반복문에서 예시로 썼던 1부터 10까지 모두 더하는 프로그램입니다.

다른 점이 있다고 하면, while 문의 조건식이 true라는 것입니다.
이는 break 문이 없으면 무한루프에 빠지게 됩니다.

그래서 무한루프에 빠지지 않게하기 위해, if 문을 통해 조건이 맞으면 break 문으로 while 문 밖으로 탈출하도록 하는 것입니다.

하지만 여기서 주의할 점은 중첩 반복문일 경우, break 문이 포함된 반복문의 { } 블록을 감싼 부분만 탈출할 수 있습니다.

for(int i=0; ...) { // 1번
	for(int j=0; ...) { // 2번
    	if(조건) break;
    }
}

2번 for 문 안에 break 문이 작동하면, 2번 for 문만 빠져나오게 되는 것입니다. 그래서 다시 1번 for 문이 반복 수행합니다.

continue 문

일단, break 문은 위의 설명대로면 반복문에서 탈출하는 기술이라고 할 수 있습니다. 이와 다르게 continue 문은 현재 실행을 중단하고 다시 다음 반복을 계속 실행하는 기술이라고 생각할 수 있습니다.

예를 들어, continue 문을 통해 다음과 같은 코드를 작성할 수 있습니다.

for(int i=0; i<=5; i++) {
	if(i % 2 == 0) continue;
    
    System.out.println("홀수");
}

위의 for 문에서 if 문의 조건식이 참이면(변수 i가 짝수면) continue 문에 의해 제어가 for 문의 i++로 이동해 증가된 i 값을 갖고 다음 반복을 실행합니다.
그래서 i의 값이 홀수면 홀수가 출력됩니다.

만약, while 문에서 continue 문이 존재하면, 제어를 while 문의 조건식을 확인하는 부분으로 이동하여 반복 실행 여부를 결정합니다.

지금까지 간단하게 자바에서 사용하는 break 문과 continue 문에 대해서 알아봤습니다.

profile
꾸준함으로 성장하는 개발자 지망생

0개의 댓글

관련 채용 정보