Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

자바(Java) break와 continue 문의 핵심 차이점 완벽 정리

프로그래밍에서 코드는 기본적으로 위에서 아래로 한 줄씩 순차적으로 실행됩니다. 그러나 실제 개발 과정에서는 특정 조건에 따라 이러한 실행 흐름을 변경해야 하는 경우가 자주 발생합니다. 자바(Java)를 비롯한 대부분의 프로그래밍 언어는 이를 위해 breakcontinue라는 두 가지 제어문을 제공하며, 이들은 주로 반복문 안에서 특정 코드의 실행을 건너뛰거나 중단하는 데 사용됩니다.

그렇다면 이 두 문장은 어떤 점에서 다를까요? 아래 표에서 주요 차이점을 확인해 보겠습니다.

번호구분break 문continue 문
1기능break 문은 while, do-while, for 반복문 또는 switch 문처럼 해당 문을 감싸고 있는 블록을 즉시 종료시키는 데 사용됩니다.continue 문은 continue가 선언된 지점 이후의 나머지 루프 코드를 건너뛰고 곧바로 다음 반복(Iteration)을 실행합니다.
2실행 흐름break 문은 프로그램의 제어를 루프의 끝으로 옮기며, 실행 흐름이 해당 루프의 외부로 완전히 빠져나갑니다.continue 문은 프로그램의 제어를 continue를 감싸고 있는 루프의 다음 반복으로 넘기며, 실행 흐름이 다시 루프 내부에서 계속됩니다.
3사용 목적앞서 설명했듯이 break는 감싸고 있는 루프 전체를 종료하는 목적으로 사용됩니다.반면 continue는 감싸고 있는 루프의 다음 반복을 조기에 실행하도록 만드는 역할을 합니다.
4호환성break 문은 'switch' 문 및 'label(레이블)'과 함께 사용할 수 있으며 호환됩니다.continue 문은 'switch' 문이나 'label'과 함께 사용할 수 없습니다.

Continue vs Break 예제

아래 예제를 통해 두 문장의 동작 방식을 직접 비교해 보겠습니다.

JavaTester.java

public class JavaTester{
    public static void main(String args[]){
        // break 문 예시: i 값이 4가 되면 실행이 중단됩니다.
        System.out.println("Break Statement\n");
        for(int i=1;i<=5;i++){
            if(i==4) break;
            System.out.println(i);
        }
        // continue 문 예시: i 값이 1일 때 실행이 건너뛰어집니다.
        System.out.println("Continue Statement\n");
        for(int i=1;i<=5;i++){
            if(i==1) continue;
            System.out.println(i);
        }
    }
}

실행 결과

Break Statement
1
2
3

Continue Statement
2
3
4
5

위 출력 결과를 보면, break 문을 사용한 첫 번째 반복문은 i가 4가 되는 순간 루프 자체가 종료되어 1부터 3까지만 출력됩니다. 반면 continue 문을 사용한 두 번째 반복문은 i가 1일 때 해당 반복만 건너뛰고 2부터 5까지 모두 정상적으로 출력되는 것을 확인할 수 있습니다.

정리

핵심을 요약하면, break는 반복문 자체를 완전히 종료시키고, continue는 현재 반복만 건너뛴 후 다음 반복을 계속 진행합니다. 따라서 더 이상 반복을 진행할 필요가 없을 때는 break를, 특정 조건에서만 처리를 생략하고 나머지는 계속 수행하고 싶을 때는 continue를 사용하는 것이 적절합니다. 두 문장의 차이를 명확히 이해하면 반복문 로직을 훨씬 유연하게 작성할 수 있습니다.