學習就是為了不斷的看到自己的知識盲點,然後改正,以前知道如何使用break來跳出迴圈,突然學習到可以用break跳出外部的迴圈(以前只知道怎麼調本次的迴圈)。 上正題代碼如下: break跳出本次迴圈: public static void main(String[] args) { for (in ...
學習就是為了不斷的看到自己的知識盲點,然後改正,以前知道如何使用break來跳出迴圈,突然學習到可以用break跳出外部的迴圈(以前只知道怎麼調本次的迴圈)。
上正題代碼如下:
break跳出本次迴圈:
public static void main(String[] args) { for (int i = 0; i < 10; i++) { for (int j = 0; j <=10; j++) { System.err.println(i+j); if(i+j==10) { break; } } } }
這一串代碼當i+j=10時,就會跳出迴圈重新進入第二次迴圈,這是已經會的知識點,它輸出的答案輸出了9次 0~9。
再看下麵一段代碼:
break跳出外部迴圈:
/* break;跳出外部迴圈使用 */ public static void main(String[] args) { a:for (int i = 0; i < 10; i++) { for (int j = 0; j <=10; j++) { System.err.println(i+j); if(i+j==10) { break a; } } } }
這次輸出的答案是什麼:輸出1次0~9。
我想怎麼樣使用已經很清楚了,下麵稍微拓展一下子。
多重跳出:
public static void main(String[] args) { //多重迴圈跳出使用 int sum =0; a:for (int i = 0; i <= 5; i++) { //定義第一層迴圈別名為a: b:for (int j = 0; j <=5; j++) { //定義第二層迴圈別名為b: for (int j2 = 0; j2 <=5; j2++) { sum = sum +i+j+j2; if(i == 2) { //當i值等於2時跳出第二層迴圈,繼續下次迴圈 break b; } if (i == 4) { //當i值等於4時跳出第一層迴圈,導致整個迴圈結束 break a; } } } } System.out.println(sum); }
while跳出:
public static void main(String[] args) { /* break;跳出外部迴圈同樣適用於while */ int i=0; a:while (i<=10) { int j =0; while (j<=10) { System.out.println(i+j); j++; if(j==7) { break a; } } i++; } }
差點把這個知識點給忘記了,還好臨時想起來,所以快點記錄下來=-=。
個人學習,內容簡略。