在任何循环语句的主体部分,均可用break控制循环的流程
break用于强行退出循环,不执行循环中剩余的语句
public class BreakDemo01 { public static void main(String[] args) { int i = 0; while (i < 100){ i++; System.out.println(i); if(i == 10){ break; // 跳出while循环,但没有终止程序 } } System.out.println("123");//循环外面的语句继续执行 } }
运行结果
语句在循环语句体中,用于终止某次循环过程
即跳过循环体中尚未执行的语句,接着执行下一次是否执行循环的判定
public class ContinueDemo { public static void main(String[] args) { int i = 0; while (i < 100){ i++; if(i % 10 == 0){ System.out.println(); continue;//终止了i%10==0这一次的循环 //当i%10==0的时候让程序回到开始的地方,继续往下走 } System.out.print(i+" "); } } }
运行结果
Java没有 goto ,然而在break 和 continue 这两个关键字的身上,仍然可以看出一些goto的影子。带标签的break和continue
“标签”是指后面跟着一个冒号的标识符,例如:label:
对于Java来说,唯一用到标签的地方是在循环语句之前
而在循环之前设置标签的唯一理由是:希望在其中嵌套另一个循环
由于break和continue关键字通常只中断当前循环,但随同标签使用,他们就会中断到存在标签的地方
例://打印101到150之间的质数
public class GotoDemo { public static void main(String[] args) { int count = 0; outer: for (int i = 101;i < 150;i++){ for(int j = 2;j < i / 2;j++){ if(i % j == 0){ continue outer; } } System.out.print(i + " "); } } }
运行结果