본문 바로가기
JAVA

[JAVA] 반복문(break문과 continue문 사용하기)

by 정공자씨 2024. 4. 16.

 
 

break와 continue
반복문에 사용되는 제어문




break문


정의

  • 반복문(for문, while문 등)을 강제로 종료해야 하는 경우에 사용
  • break를 만나면 반복문을 중지하고, 반복문을 탈출함



 

for문에서 break문 사용하기

public static void main(String[] args) {

    for (int i = 0; i <= 10; i++) {
        if( i == 5 ) { // i == 5가 되면, 반복문을 강제 종료
            break;
        }
        // i == 5가 되면, for문(반복문)이 종료되기 때문에 아래 문장 출력 X
        System.out.println("반복 중 : i = " + i);
    }

    System.out.println("반복문 빠져 나옴!");
    
}

 [실행결과]

  • for 반복문을 5번 돌고(i가 0 ~ 4까지 반복)
  • i == 5가 되면, for 반복문을 종료함
  • 따라서, break 다음에 있는 출력문은 출력되지 않음
  • 즉, ‘반복 중 : i = 5’ 문장이 출력되지 않음

 

 

중첩 for문에서 break문 사용하기

  • break문 : 자신이 포함된 가장 가까운 반복문(for문)을 종료시킴
public static void main(String[] args) {

    // 1번 for문
    for (int i = 0; i <= 5; i++) {

        System.out.println("------- 1번 for문 : i = " + i + " -------");

        // 2번 for문
        for (int j = 0; j <=5 ; j++) {
            if(j == 3) { // j == 3인 경우, break를 만나 '2번 for문' 강제 종료(벗어남)
                break; 
            }
            // j == 3인 경우, break문을 만나 '2번 for문'을 벗어나므로, 아래 문장 출력되지 않음
            System.out.println("2번 for문 : j = " + j);  
            
        } 
    }
    
    System.out.println("프로그램 종료");
    
}

[실행 결과]

 

  • j == 3 인 경우에, if문을 실행하고 break를 만나, 가장 가까운 2번 for 반복문을 벗어나게 되고
  • 2번 for 반복문 내의 출력문인 "2번 for문 : j = 3"이 출력되지 않고
  • 2번 for 반복문을 벗어났기 때문에, 이후 1번 for 반복문을 실행함

 





 

continue문

정의

  • 반복문 내에서 실행문을 건너뛸 때에 사용
  • continue문을 만나면, continue 뒤위 실행문의 실행을 생략하고 다음 반복문을 수행함
반복문을 종료하는 것은 아님


 

중첩 for문에서 continue문 사용하기

public static void main(String[] args) {

    for (int i = 0; i <= 5; i++) {

        if(i == 4) { // i == 4인 경우, 반복문 내의 실행문의 실행 생략, 다음 반복문 수행
            System.out.println("if문 : continue 실행");
            continue; // 다음 반복문 수행 = for문의 증감식으로 이동
        }
        System.out.println("for문 : " + i);
        
    }
}

[실행 결과]

  • i == 4인 경우, if문을 실행하면서 continue문을 만남
  • 따라서, continue문 뒤의 실행문을 실행하지 않고 다음 반복문으로 이동하기 때문에
  • 출력문인 ‘for문 : 4’는 출력하지 않고
  • i == 5인 경우를 실행함