본문 바로가기
Develop/Java

break의 범위

by jaeyoungb 2022. 9. 13.

반복문이나 조건문을 사용하면서, break문을 한 번쯤은 봤을 것이다.

 

문득, 코드를 짜면서 break가 반복문이나 조건문을 빠져나오는 건 알겠는데,

어떤 범위까지 유효할까 라는 생각이 들었다.

 

평상시에 break문을 보면, 코드를 대충 이해하고 '아 여기 break문이 있네? 하면서 뭐 이쯤에서 끝나는 거겠지' 했다.

알고리즘 문제를 풀면서, break문을 신중하게 써야될 때가 생기니까, 정확한 범위가 알고 싶어졌다.

 

다음 예시 코드를 보면서, break문의 유효 범위를 알아보자.

break의 범위를 정확히 알고자, 이중 for문으로 예시를 들었다.

 

다음은 코드의 결과이다.

원래 출력은 위 결과가 i가 200이 되기 전까지 반복되는 출력이 나오지만,
출력 모두를 캡쳐해 담을 수가 없어서 안쪽 루프가 한 번 도는 것까지의 출력만 가져왔다.

 

 

j가 5가 되는 순간, break가 실행이 되면

break문이 있는 if 조건문이 멈춰지는 동시에, 근접한 j의 for 반복문까지 멈춰지고,

바깥 루프 i가 실행되는 걸 알 수 있다.

 

 

이는 break문이 담겨있는 조건문, 반복문은 물론이고, 그와 제일 근접한 조건문, 반복문까지도 빠져나간다는 사실을 알 수 있다.