산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

Java break 문: 사용법, 라벨된 break로 다중 루프 탈출하기

Java break 문

이 튜토리얼은 Java break 문, 문법, 라벨된 break를 사용한 정밀한 루프 제어 방법을 설명합니다.

루프로 작업할 때 반복의 나머지 문장을 건너뛰거나 루프 조건을 다시 평가하지 않고 루프를 완전히 종료해야 할 수 있습니다. break와 continue 문이 그런 제어를 제공합니다. 다음 튜토리얼에서 continue를 다룹니다.


break 문은 가장 안쪽 루프나 switch 구문을 즉시 종료하고, 프로그램 실행은 종료된 블록 다음 문장으로 계속됩니다.

주로 if…else 같은 조건부 로직과 결합하여 조기 종료 지점을 만드는 데 사용됩니다.

구문:

break;

break 문 작동 방식

Java break 문: 사용법, 라벨된 break로 다중 루프 탈출하기

예제 1: for 루프에서 break 사용

class Test {
    public static void main(String[] args) {
        // for 루프
        for (int i = 1; i <= 10; ++i) {
            // i 값이 5이면 루프 종료
            if (i == 5) {
                break;
            }
            System.out.println(i);
        }
    }
}

출력:

1
2
3
4

루프는 1부터 4까지 값을 출력합니다. if 블록이 i를 확인하고 5와 같으면 break가 루프를 멈춥니다.


예제 2: 사용자 입력과 함께 while 루프에서 break

여기서 사용자가 음수를 입력할 때까지 입력된 숫자들의 합을 구합니다.

입력 읽기에 Scanner를 사용합니다. Scanner에 대한 자세한 내용은 Java Scanner 튜토리얼 참조.

import java.util.Scanner;
class UserInputSum {
    public static void main(String[] args) {
        Double number, sum = 0.0;
        Scanner input = new Scanner(System.in);
        while (true) {
            System.out.print("숫자를 입력하세요: ");
            number = input.nextDouble();
            if (number < 0.0) {
                break;
            }
            sum += number;
        }
        System.out.println("Sum = " + sum);
    }
}

출력:

숫자를 입력하세요: 3.2
숫자를 입력하세요: 5
숫자를 입력하세요: 2.3
숫자를 입력하세요: 0
숫자를 입력하세요: -4.5
Sum = 10.5

while (true) 루프는 음수 값이 입력되어 break가 실행될 때까지 무한히 실행됩니다.


중첩 루프에서의 Break

중첩 루프에서 break는 가장 안쪽 루프만 종료합니다.

Java break 문: 사용법, 라벨된 break로 다중 루프 탈출하기

이미지는 내부 while 안의 break가 외부 루프로 이동함을 보여줍니다.


라벨된 Break 문

단순 break 외에도 Java는 외부 루프를 직접 종료할 수 있는 라벨된 변형을 제공합니다. 여러 수준의 중첩 루프를 빠져나와야 할 때 유용합니다.

Java break 문: 사용법, 라벨된 break로 다중 루프 탈출하기

라벨은 루프 앞에 위치하며 break label;은 해당 루프를 종료하고 그 뒤를 따르는 문장으로 점프합니다.

while (testExpression) {
    // 코드들
    second: while (testExpression) {
        // 코드들
        while(testExpression) {
            // 코드들
            break second;
        }
    }
    // 제어는 여기로 점프
}

break second;가 실행되면 second로 표시된 루프가 끝나고 그 루프 다음에서 제어가 재개됩니다.


예제 3: 라벨된 Break 사용

class LabeledBreak {
    public static void main(String[] args) {
        first: for (int i = 1; i < 5; i++) {
            second: for (int j = 1; j < 3; j++) {
                System.out.println("i = " + i + "; j = " + j);
                if (i == 2) break first;
            }
        }
    }
}

출력:

i = 1; j = 1
i = 1; j = 2
i = 2; j = 1

여기서 break first;는 외부 for 루프를 종료하므로 세 번째 줄 출력 후 프로그램이 멈춥니다.

break first;를 break second;로 바꾸면 내부 루프만 종료되고 외부 루프는 계속됩니다.

class LabeledBreak {
    public static void main(String[] args) {
        first: for (int i = 1; i < 5; i++) {
            second: for (int j = 1; j < 3; j++) {
                System.out.println("i = " + i + "; j = " + j);
                if (i == 2) break second;
            }
        }
    }
}

출력:

i = 1; j = 1
i = 1; j = 2
i = 2; j = 1
i = 3; j = 1
i = 3; j = 2
i = 4; j = 1
i = 4; j = 2

참고: break 문은 switch case도 종료합니다. 더 알아보려면 Java switch 문 튜토리얼 참조.

java

  1. C# switch 문 마스터하기: 문법, 예제, 모범 사례
  2. C# break 문: 사용법과 활용 시점 완벽 가이드
  3. C# continue 문: 루프 반복 건너뛰기 완벽 활용법
  4. Java 연산자 마스터하기: 종류, 문법, 실전 예제
  5. Java 주석: 종류, 사용법, 모범 사례
  6. Java 향상된 for 루프(for-each) 완벽 가이드: 문법, 예제, 비교
  7. Java String 마스터하기: 생성, 메서드, 모범 사례
  8. Java 인터페이스 마스터: 개념, 구현, 모범 사례
  9. Java Try-with-Resources 마스터: 자동 리소스 관리 완전 해설
  10. Java 애너테이션 완전 해설: 종류, 배치 위치, 실전 예제