java中break和continue的使用

33 篇文章 0 订阅
31 篇文章 0 订阅

break和continue的使用

使用范围:break主要用于switch-case和循环结构中.而continue主要用于循环结构中。
break是直接跳出一个最近的循环,而continue只是跳出当前的一次循环,如果满足循环条件,循环还会继续进行。

public class Main {
    public static void main(String[] args) {
        int n=5,j=12;
        while(n<=j){
            System.out.print(n+"\t");
            n++;
            break;
        }
        System.out.println("n="+n);
    }
}

如上例,循环只执行了一次,执行到break就会跳出循环,从而得到结果为5 ,n=6,并且不在进入循环体。

public class Main {
    public static void main(String[] args) {
        int n=5,j=12;
        while(n<=j){
            System.out.print(n+"\t");
            n++;
            continue;
        }
        System.out.println("n="+n);
    }
}

而换成continue后,循环会执行到不符合循环条件为止,即分别输出5到12的所有数和n=13,这说明了continue只是在循环完成后跳出了一次循环,对后续循环无直接影响。

注意:1.在if语句中使用了continue或者break后,不能再加执行语句。
2.break只能跳出最近的一层循环,不可大意了!在多重循环中break也只能跳出一层,但是我们可以指定它跳哪一层,比如我用9*9乘法表的代码,对于第二层循环我不想使循环条件中的j<=n,我想具体写一个数,那么我就可以用定向的continue加if语句实现,如下:

public class Main {
    public static void main(String[] args) {
        int n,j;
        text:for(n=1;n<10;n++) {
            for(j=1;j<10;j++){
                System.out.print(n + "*" + j + "=" + (n * j) + "\t");
                if (j==n){
                    System.out.println();
                    continue text;
                }
            }
        }
    }
}

经过观察可以发现,在第一层for前多了个“text:”,在continue后多了个空格+text。这就是定向的结束外层循环,这个continue虽然在内层写着,但是它结束的是外层的循环(即有text:标记的那个循环),即满足条件就会执行结束外层当次循环的指令,从而进行下一次循环。所以,你若想结束一层与continue/break不相接近的循环,只需要在循环前命名,在continue/break后加所命的名即可,而且不管continue/break在哪,只要你给它的后面加的命名匹配,它都会找到它的另一半(即叫这个名字的循环)。(break也是如此,我就不举例子了,大家自行探索)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值