Java 반복문 break와 continue 완전 정복 – 사용법과 차이점까지 한눈에!
🚦 반복문 흐름을 내 맘대로 제어하는 break와 continue 완벽 이해하기
Java 문법을 처음 배우다 보면 반복문은 어렵지 않게 이해되지만, break와 continue 키워드를 사용하는 순간부터 헷갈리기 시작하죠.
개발자라면 꼭 알아야 할 핵심 개념이지만, 단순히 중간에서 멈춘다 또는 넘어간다는 설명만으로는 실제 코드에 적용하기 어렵습니다.
오늘 포스팅에서는 Java에서 break와 continue가 어떤 역할을 하며, 언제 어떻게 쓰이는지를 예제와 함께 친절히 설명드릴게요.
초보자 분들도 걱정 마세요!
실습을 통해 자연스럽게 이해하실 수 있도록 단계별로 안내해드릴게요.
이 글에서는 Java의 반복문에서 가장 많이 활용되는 break와 continue 키워드에 대해 알아보며,
이 둘이 각각 어떤 상황에서 사용되는지, 어떤 차이점이 있는지를 쉽게 설명드립니다.
특히 실제 개발 현장에서 자주 쓰이는 for문과 while문에서의 활용 예제를 통해 여러분이 직접 적용해 볼 수 있도록 돕겠습니다.
단순한 문법 설명을 넘어, 실전에서 흔히 접할 수 있는 상황 중심으로 정리했어요.
📋 목차
🔗 break와 continue는 어떤 역할을 하나요?
Java에서 break와 continue는 반복문과 조건문에서 흐름을 제어하는 매우 중요한 키워드입니다.
단순히 반복문을 도는 것만으로는 복잡한 로직을 구현할 수 없기 때문에, 특정 조건일 때 반복을 중지하거나 건너뛰는 것이 필요하죠.
바로 그럴 때 이 두 키워드가 활약합니다.
먼저 break는 반복문을 즉시 종료하는 역할을 합니다.
반복문이 아무리 조건을 만족하고 있더라도, break를 만나면 그 자리에서 루프가 끝나버립니다.
반면 continue는 해당 반복을 한 번만 건너뛰고 다음 반복으로 넘어가는 키워드입니다.
즉, 루프 전체를 끝내는 것은 아니며 특정 조건에서만 제외하고 싶을 때 유용하죠.
- 🚫break: 반복문을 즉시 종료
- ⏭️continue: 현재 반복을 건너뛰고 다음 반복 실행
💬 if문과 함께 자주 사용되며, break는 보통 특정 조건에서 루프를 빠져나오고 싶을 때, continue는 특정 조건에서만 제외하고 반복을 계속하고 싶을 때 사용합니다.
예를 들어, 1부터 10까지 숫자를 출력하는 반복문에서 5까지만 출력하고 싶다면 break를,
짝수만 출력하고 싶다면 홀수 조건일 때 continue를 사용할 수 있어요.
이처럼 두 키워드를 잘 활용하면 더 깔끔하고 효율적인 코드를 작성할 수 있습니다.
🛠️ break 키워드의 동작 방식
Java에서 break는 반복문 또는 switch문에서 주로 사용되며, 해당 구문의 실행을 즉시 중단하고 빠져나가는 기능을 합니다.
특정 조건을 만족했을 때 더 이상 반복이 필요하지 않을 경우 유용하게 사용됩니다.
특히 for문, while문, do-while문 모두에서 break를 사용할 수 있으며,
중첩 반복문에서는 가장 가까운 반복문 하나만 종료된다는 점도 기억해 두세요.
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break; // i가 5가 되면 반복문 종료
}
System.out.println(i);
}
위 예제를 실행하면 콘솔에는 1부터 4까지만 출력되고, i가 5가 되는 순간 반복문이 즉시 종료됩니다.
이처럼 break는 불필요한 반복을 방지하고, 프로그램의 흐름을 효율적으로 제어하는 데 유용합니다.
💡 TIP: 무한 루프를 만들 때 break를 조건과 함께 사용하면 안전하게 종료 조건을 설정할 수 있어요.
while (true) {
int input = scanner.nextInt();
if (input == 0) {
break; // 0을 입력하면 루프 종료
}
System.out.println("입력값: " + input);
}
이런 방식으로 break를 활용하면 사용자의 입력에 따라 프로그램 흐름을 유연하게 제어할 수 있어 실무에서도 자주 활용됩니다.
⚙️ continue 키워드의 동작 방식
이번에는 continue 키워드를 살펴보겠습니다.
continue는 반복문 내부에서 특정 조건에 맞을 때 해당 반복만 건너뛰고, 다음 반복으로 넘어가도록 합니다.
즉, 반복문 자체는 종료되지 않고 계속 실행되며, 일부 조건에서만 스킵하는 데 유용하죠.
가장 대표적인 예는 짝수만 출력하거나, 특정 숫자를 제외하고 반복할 때입니다.
for문, while문, do-while문에서 모두 사용할 수 있으며, 중첩 반복문에서도 가장 가까운 반복문의 다음 반복으로 넘어갑니다.
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // 짝수는 출력하지 않음
}
System.out.println(i);
}
위 코드를 실행하면 출력 결과는 1, 3, 5, 7, 9입니다.
짝수일 경우 continue를 만나 출력하지 않고, 다음 반복으로 이동하기 때문이죠.
💡 TIP: continue는 필터링 조건이 있을 때 매우 유용하게 쓰입니다.
예를 들어, 유효하지 않은 데이터는 무시하고 나머지만 처리하고 싶을 때 자주 사용됩니다.
String[] names = { "John", "", "Jane", null, "Mike" };
for (String name : names) {
if (name == null || name.isEmpty()) {
continue; // 빈 값은 건너뜀
}
System.out.println(name);
}
이 예제에서는 빈 문자열이나 null 값은 출력하지 않고 건너뛰는 구조입니다.
continue를 사용하면 조건이 복잡한 데이터에서도 불필요한 작업을 줄이고 깔끔한 코드를 만들 수 있어요.
🔍 break와 continue의 차이점
break와 continue는 둘 다 반복문의 흐름을 제어하는 키워드지만, 그 기능과 목적은 분명히 다릅니다.
많은 분들이 이 두 가지를 헷갈리기 쉬운데요, 핵심은 “끝내느냐, 건너뛰느냐”입니다.
break는 반복문 자체를 완전히 종료시켜 더 이상 반복이 일어나지 않도록 합니다.
반면 continue는 현재 반복만 건너뛰고, 나머지 조건에 따라 반복을 계속합니다.
즉, 반복을 중단할 때는 break, 건너뛸 때는 continue를 사용하는 것이죠.
| 구분 | break | continue |
|---|---|---|
| 기능 | 반복문 종료 | 현재 반복 건너뛰기 |
| 적용 대상 | for, while, do-while, switch | for, while, do-while |
| 반복문 흐름 | 즉시 종료 | 다음 반복으로 이동 |
| 사용 목적 | 조건 만족 시 반복 종료 | 조건 만족 시 반복 일부 건너뜀 |
이러한 차이를 명확히 이해하고 있어야 실제 코딩 중 혼동 없이 적절한 키워드를 선택할 수 있습니다.
특히 무한 루프나 조건 필터링처럼 반복 제어가 핵심인 경우에 두 키워드의 용도 차이가 더욱 중요해지죠.
⚠️ 주의: break와 continue는 코드 흐름을 크게 바꿀 수 있으므로 남용하지 않도록 주의해야 합니다. 특히 여러 조건이 겹치는 복잡한 루프에서 과도하게 사용하면 오히려 가독성이 떨어질 수 있습니다.
💡 반복문에서 유용한 실전 예제
이제 break와 continue의 개념을 이해했으니, 실전에서 어떻게 활용되는지 직접 예제를 통해 살펴볼게요.
아래는 자주 쓰이는 반복문 제어 시나리오입니다.
초보자분들도 따라 하기 쉬운 형태로 준비했으니, 꼭 한번 직접 실행해보시길 추천드립니다.
🔢 숫자 중에서 특정 조건일 때 반복 중지
for (int i = 1; i <= 100; i++) {
if (i % 13 == 0) {
System.out.println("13의 배수 발견! 반복 종료");
break;
}
System.out.println(i);
}
위 예제는 1부터 100까지 숫자를 출력하다가 13의 배수를 만나면 출력 후 반복을 중단합니다.
조건 탐지 후 루프를 빠르게 종료해야 하는 상황에서 매우 유용하죠.
🧹 무효 데이터 걸러내고 처리 계속하기
String[] users = {"Tom", "", "Sarah", null, "Alex"};
for (String user : users) {
if (user == null || user.isEmpty()) {
continue; // 무효 데이터는 건너뜀
}
System.out.println("사용자: " + user);
}
이 코드에서는 사용자 목록 중 빈 문자열이나 null 값은 출력하지 않고 건너뜁니다.
continue 키워드를 활용하면 데이터 유효성 검사를 간결하게 처리할 수 있어요.
💎 핵심 포인트:
break는 필요 이상의 반복을 멈출 때, continue는 조건에 따라 선택적으로 건너뛸 때 사용하세요. 상황에 맞게 적절히 조합하면 더욱 깔끔한 로직을 만들 수 있습니다.
❓ 자주 묻는 질문 (FAQ)
break와 continue는 꼭 써야 하나요?
break는 어디까지 종료되나요?
continue는 if 없이도 쓸 수 있나요?
라벨 break는 무엇인가요?
while문에서도 break와 continue 사용 가능한가요?
switch 문에서도 continue를 쓸 수 있나요?
break와 return의 차이는 무엇인가요?
continue를 중첩 루프에서도 사용할 수 있나요?
🧭 반복문 제어 키워드로 Java 로직을 더 유연하게!
Java에서 반복문은 매우 자주 사용되는 기본 문법 중 하나이며, 그 흐름을 유연하게 제어해주는 도구가 바로 break와 continue입니다.
break는 반복문을 즉시 종료하고, continue는 현재 반복만 건너뛰는 기능으로 로직의 흐름을 효율적으로 제어할 수 있게 도와줍니다.
단순히 문법을 외우는 것보다, 다양한 상황에서 어떻게 활용할 수 있는지를 예제 중심으로 학습하는 것이 중요합니다.
이 글에서 다룬 예시들을 바탕으로 직접 코드를 작성해보고, 다양한 조건에서 반복문을 제어해 보세요.
이처럼 break와 continue를 적절히 사용하면 코드의 가독성은 물론, 실행 성능까지 개선할 수 있습니다.
초보자에게는 조금 생소할 수 있지만, 실무에서 정말 자주 쓰이는 문법이니 꼭 익혀두시길 바랍니다.
🏷️ 관련 태그 : java반복문, break문법, continue문법, 반복문종료, 반복문제어, 자바기초, java기초문법, 자바제어문, 자바for문, 자바while문