3.3.5 break 레이블 문
프로그래밍하다 보면 반복문 내부에 반복문을 사용해야 할 때가 있습니다. 만약 내부 반복문에서 break문을 사용하면 내부 반복문만 탈출합니다. 그런데 외부 반복문에 레이블을 지정하고 내부 반복문에서 break 레이블문을 사용하면 외부 반복문을 탈출할 수 있습니다.
먼저 Java 언어에서는 코드 상에 레이블 이름을 지정하고 콜론(:)을 표시하면 레이블을 설정하는 것입니다.
레이블 명:
그리고 break 레이블문은 break 뒤에 레이블 이름을 표시하는 것입니다.
break 레이블 명;
예를 들어 구구단의 합을 계산하다 처음으로 1000을 넘는 위치가 어디인지 확인하는 로직을 구현해 봅시다. 이를 위해서는 단을 진행하기 위한 반복문이 외부에 있고 내부에 다시 단*1에서 단*9까지 진행하며 합계를 구하는 반복문이 필요합니다. 그리고 내부 반복문에서는 합계가 1000보다 크면 외부 반복문을 탈출하여 로직을 완료해야 합니다. 이처럼 여러 개의 반복문의 로직에서 외부 반복문을 탈출할 때 break 레이블문을 사용합니다.
sum을 0으로 초기화
탈출_레이블 지정
반복(i를 1로 초기화;
i가 10보다 작을 동안;
i를 1씩 증가)
반복(j를 1로 초기화;
j가 10보다 작을 동안;
j를 1씩 증가)
sum에 sum + i*j를 대입
조건(sum이 1000보다 크거나 같으면)
탈출_레이블로 탈출
현재 i와 j 및 sum을 출력
[소스 3.11] break 레이블을 이용하여 99단 합계가 처음으로 1000을 넘을 때 확인
private static void exBreakLabel() { int sum = 0; int i=0; int j=0; exit_Label: for( i = 1; i<10; i++){ for( j=1; j<10; j++){ sum += i*j; if(sum >=1000){ break exit_Label; } } } System.out.println("1*1+1*2+..."+i+"*"+j +"="+sum ); }
실행 결과
1*1+1*2+...7*4=1015