for循环里面break和continue的区别

本文详细解析了Java中for循环中break和continue的使用区别。break用于跳出整个包含它的循环,而continue则仅跳过当前循环的剩余部分,继续执行下一次循环。通过示例代码演示了两者的不同效果,包括在多层循环中的行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很多初学Java的同学可能对break和continue跳出for循环有些疑惑,

其实简单的说就是:在多层嵌套for循环里面break是跳出包裹continue这一层for循环的所有循环,跳出之后不会继续执行continue这一层for循环的剩余循环

而continue是跳出包裹continue这一层for循环的这一次循环,跳出之后会继续执行continue这一层for循环的剩余循环

下面会用几小例子说明


//在内层循环时,当j==1时让它跳出j==1这次循环,之后继续执行j=2,3的循环

for(int i=0;i<3;i++){
System.out.println("外层for循环"+i);
for(int j=0;j<4;j++){
if(j==1)
continue;
// if(j==2)
// break;
System.out.println("内层循环"+j);
}
}

结果:外层for循环0
    内层循环0
    内层循环2
    内层循环3
    外层for循环1
      内层循环0
    内层循环2
        内层循环3
    外层for循环2
    内层循环0
    内层循环2
    内层循环3

可以看得出来continue只是跳出了j==1那次内循环,并且会继续执行剩余的循环,现在我们把注解的break放出来看下结果

代码:

for(int i=0;i<3;i++){
System.out.println("外层for循环"+i);
for(int j=0;j<5;j++){
if(j==1)
continue;
if(j==3)
break;
System.out.println("内层循环"+j);
}
}

结果:

外层for循环0
内层循环0
内层循环2
外层for循环1
内层循环0
内层循环2
外层for循环2
内层循环0
内层循环2

从结果可以看出外层循环都执行了,而内层循环当道j==3,即跳出这层for循环不执行这层for循环剩余的for循环了

还可以通过设置标识跳到指定标识,如下:

loop:for(int m=0;m<2;m++){
System.out.println("m= "+m);
for(int i=0;i<3;i++){
System.out.println("外层for循环"+i);
for(int j=0;j<5;j++){
if(j==1)
continue;
if(j==3)
break loop;
System.out.println("内层循环"+j);
}
}
}

结果:

m= 0
外层for循环0
内层循环0
内层循环2

可以看出当j==3时跳到了指定位置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值