C語言有個goto關鍵字,利用goto關鍵字可以跳出多重循環或跳到某個運行點。
java中保留了goto關鍵字,但是沒有goto的功能,主要是考慮到安全性吧。不過java跳出多重循環我們可以使用label標記,在多重循環的最外面一個循環前加上label: ,在需要的跳出的地方寫break label就OK了,需要說明這裏的label也可以換成其他的單詞,只要符合java的標示符就OK。
break label;
這裏,標籤label 是標識代碼塊的標籤。當這種形式的break執行時,控制被傳遞出指定的代碼塊。被加標籤的代碼塊必須包圍break 語句,但是它不需要是直接的包圍break的塊。這意味着你可以使用一個加標籤的break 語句退出一系列的嵌套塊。但是你不能使用break 語句將控制傳遞到不包含break 語句的代碼塊。
Label:// 此處不能有非循環代碼,除非用代碼塊包括如下 for (int index = 0; true; index ++) { if (index == 10) { System.out.println("once break Label:" + index); break Label; // 直接跳出label標誌循環 } }