break label 用法

今天在看別人代碼的時候看到一個之前沒注意到的break 用法:break label。

我們都知道break的用法,是用來跳出所在的循環,處理代碼如下:

public class BreakTest {
    public static void main(String[] args) {
        while (true) {
            for (int i = 0; i <= 10; i++) {
                System.out.println("i=" + i);
                if (i == 5) {
                    break;
                }
            }
            System.out.println("++++++++++++++++++++++");
        }
    }
}
這個代碼會循環輸出:

i=0
i=1
i=2
i=3
i=4
i=5
++++++++++++++++++++++

break label 則是可以跳出通過label的標籤定義的代碼塊,代碼如下:

public class BreakTest {
    public static void main(String[] args) {
        label1:
        while (true) {
            for (int i = 0; i <= 10; i++) {
                System.out.println("i=" + i);
                if (i == 5) {
                    break label1;
                }
            }
            System.out.println("++++++++++++++++++++++");
        }
    }
}
這個只會輸出:

i=0
i=1
i=2
i=3
i=4
i=5

它在滿足break條件時跳出了label1標記的一個代碼塊。


注意:

1. break label只能跳出包含該break語句的代碼塊,這個編譯器也會告訴你

2. label後帶一個自定義的標籤,標籤後帶一個“:”

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章