자바 반복문에서의 라벨(Label) 사용법

CJI0524·2024년 12월 5일

Java

목록 보기
2/7

1. 라벨 (Label) 이란?

라벨(Label)이란 반복문이나 블록에 이름을 붙이는 것을 의미한다. 이 이름을 이용해서 breakcontinue 문을 특정 반복문에 적용할 수 있다. 라벨을 사용하면 중첩된 여러 반복문에서 원하는 반복문을 정확히 제어할 수 있게 된다. 예를 들면 중첩된 반복문에서 바깥쪽 반복문까지 한 번에 빠져나가고 싶을 때, 라벨을 사용하면 유용하다.


2. 실제 활용 예시 및 장단점

2.1. 라벨(Label)의 실제 활용 예시

라벨은 반복문 바로 앞에 라벨 이름과 콜론(:) 을 붙여서 정의한다. 그 후, breakcontinue 문에서 해당 라벨 이름을 사용하여 특정 반복문을 제어할 수 있다.

실제 사용 예시는 다음과 같다. 다음은 라벨break문을 활용하여 작성한 코드이다.


✍️ 작성

public class LabelExam1 {

    public static void main(String[] args) {
        outter: 
        for(int i = 0; i < 3; i++) {
            for(int k = 0; k < 3; k++) {
                if(i == 0 && k == 2)
                    break outter;
                System.out.println(i + ", " + k);
            }
        }
    }
}

가장 바깥쪽 반복문을 outter라는 이름의 라벨로 정의하여 이중반복문을 한번에 빠져나갈 때 활용한 코드이다.



다음은 라벨continue문을 활용하여 작성한 코드이다.

✍️ 작성

public class LabelExam2 {
    public static void main(String[] args){
        outter:
        for(int i = 0; i< 3; i++){
            for(int k = 0; k < 3; k++){
                if( i == 0 && k == 2)
                    continue outter;
                System.out.println(i + ", " + k);
            }
        }
    }
}

마찬가지로 가장 바깥쪽 반복문을 outter라는 이름의 라벨로 정의하여 바깥쪽 for 반복문의 다음 반복문으로 한번에 이동할 때 활용한 코드이다.


2.2. 라벨(Label)의 장단점

라벨(Label) 의 장단점은 다음과 같다.

장점단점
뛰어난 간결성가독성 저하
뛰어난 직관성코드 유지보수 난이도 증가

라벨(Label)은 적재적소에 사용할 경우 코드의 간결성과 직관성이 좋아질 수 있지만 남용할 경우 코드의 가독성이 떨어지고 유지보수가 힘들어질 수 있다. 따라서 라벨(Label)필요할 때에만 신중하게 사용해야하며 남용해서는 안된다.


3. 해당 게시글 작성에 참고한 글 목록

부트캠프 멋쟁이사자처럼 강의자료
Should I avoid using Java Label Statements? - 스택오버플로우 (Stackoverflow)

profile
개발돌이

0개의 댓글