1.break

  • 在任何循环语句的主体部分,均可用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");//循环外面的语句继续执行
        }
    }
    

运行结果
Java的break、continue_java

2.continue

  • 语句在循环语句体中,用于终止某次循环过程

  • 即跳过循环体中尚未执行的语句,接着执行下一次是否执行循环的判定

    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的break、continue_循环语句_02

3.关于 goto 关键字

  • 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 + " ");
        }
    }
}

运行结果

Java的break、continue_循环语句_03