java流程break与continue的详解(简单易懂)

java中break与continue的详解(简单易懂)

break与continue的作用

1.break:

​ break语句可以用来从循环体内中途跳出循环体,即提前结束循环操作,接着执行循环下面的语句。 在任何循环中的主体,均可用break控制循环的流程!

代码示例:

public class BreakDemo01 {
    //判断输入的月份是什么季节,(3,4,5春季,6,7,8夏季,9,10,11秋季,12,1,2冬季)
    public static void main(String[] args) {
        //从键盘输入数字
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入1-12以内的月份");
        int month=sc.nextInt();
        switch (month){
            case 3:
            case 4:
            case 5:
                System.out.println("您现在的季节是春季");
            break;
            case 6:
            case 7:
            case 8:
                System.out.println("您现在的季节是夏季");
                break;
            case 9:
            case 10:
            case 11:
                System.out.println("您现在的季节是秋季");
                break;
            case 12:
            case 1:
            case 2:
                System.out.println("您现在的季节是冬季");
                break;
            default:
                System.out.println("输入的月份不对!");
        }
        sc.close();
    }

}

当然,在学过诸多循环之后,我们也可以使用if循环去做,都是可以做出来的

可以看出,当输出的值满足某一case后面的值之后,结束循环!

2.continue:

​ continue语句是跳过循环体中剩余的语句而强制执行下一次循环操作。其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定

代码示例:(没加continue的时候)

public class ContinueDemo01 {
    public static void main(String[] args) {
        int num=0;
        int count=0;
        for (int i=1;i<=5;i++){
            if (i<=4){
                num+=i;
                //continue;
            }
            count++;
        }
        System.out.println("前"+4+"个数的和为:"+num);
        System.out.println("for循环执行完成的次数:"+count);
    }
}

输出:

前4个数的和为:10
for循环执行完成的次数:5

代码示例:(加上continue之后)

public class ContinueDemo01 {
    public static void main(String[] args) {
        int num=0;
        int count=0;
        for (int i=1;i<=5;i++){
            if (i<=4){
                num+=i;
                continue;
            }
            count++;
        }
        System.out.println("前"+4+"个数的和为:"+num);
        System.out.println("for循环执行完成的次数:"+count);
    }
}

输出结果:

前4个数的和为:10
for循环执行完成的次数:1

通过上面的案例可以看出,当有continue之后直接跳出了循环!不执行下一步操作,而开始下一次循环!

关于goto关键字

goto关键字在程序设计语言中出现,在break和continue这两个关键字的身上,我们任然可以看到一些goto的影子---带标签的break和continue;

标签:后面跟一个冒号的标识符,如:label:

对java来说,使用到标签的地方是在循环语句之前,而在循环中设置标签的理由是,我们希望在其中嵌套另一个循环,由于break和continue通常只中断当前循环,但若伴随标签使用,他们就会中断到存放标签的地方;

代码示例:

public class LableDemo {
    public static void main(String[] args) {
        //求1-100之间的质数
        int count=0;
        outer: for (int i=1;i<=100;i++){
            for (int j=2;j<i/2;j++){
                if(i%j==0){
                    continue outer;
                }
            }
            System.out.print(i+" ");
        }
    }

}

输出结果:

1 2 3 4 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 
posted @ 2022-07-06 10:08  星余明  阅读(511)  评论(0编辑  收藏  举报