一.Java中的break,continue,gotoc++
首先break,continue是Java中的關鍵字,而goto是保留字。spa
基於goto在c和c++中的鬼畜表現,我以爲goto可能還會長期在Java中坐冷板凳。code
break:強行退出循環,不執行循環中的後續步驟。blog
continue:推出當前的循環,回到循環的起始點,開始一次新的循環class
例子以下:循環
// continue System.out.println("//continue:"); for (int i = 0; i < 10; i++) { if (i == 5) { continue; } System.out.print("i=" + i + " "); } // break System.out.println("\n//break:"); for (int i = 0; i < 10; i++) { if (i == 5) { break; } System.out.print("i=" + i + " "); }
運行結果以下:im
二.帶標籤的雙層循環和break,continued3
對於雙層循環或多層循環break label,將直接跳轉到label處,而且中斷全部的循環,而continue label,將跳轉到label處進行新的循環。img
例子以下:di
out: for (int i = 0; i < 5; i++) { in: for (int j = 0; j < 3; j++) { if (i == 3) { break out; } System.out.println("i=" + i + "\t" + "j=" + j); } } System.out.println("#################################"); out: for (int i = 0; i < 5; i++) { in: for (int j = 0; j < 3; j++) { if (i == 2) { continue out; } System.out.println("i=" + i + "\t" + "j=" + j); } }