return中斷方法和Unreachable code(永遠達不到的代碼)
1.下面這段代碼因為for循環是個死循環,System.out.println(); 執行不到編輯器會報錯Unreachable code(永遠達不到的代碼)
public static void main(String[] args) {for(;;) {}System.out.println();//此處報錯:Unreachable code(永遠達不到的代碼)}
2.下面這段代碼中的return會中斷方法
public class Test3 {public static void m1() {for (int i = 1; i <= 10; i++) {System.out.println(i);if (i == 2) {return ;//此處中斷此方法}}System.out.println("hello world!!!");//這行執行不到}public static void main(String[] args) {m1();}
}
上面兩段代碼都出現了執行不到的代碼,為什么一個報錯,一個不報錯?
? 第二段代碼不報錯是因為編輯器沒有那么智能,編輯器會認為 System.out.println(“hello world!!!”); 還是有可能執行到的