(PASS)break和 continue 的区别

(PASS)break和 continue 的区别,第1张

(PASS)break 和 continue 的区别

1  break; 

while循环中,break是用于永久终止循环。


即不执行本次循环中break后面的语句,直接跳出循环。


终止,跳出,结束循环(可以作用在任何地方)。


也常与switch分支结构合用。



2 continue;
  while循环中,continue是用于终止本次循环。


即本次循环中continue后面的代码不执行,进行下一次循环的入口判断。


结束本次的循环,进入下一次的循环(只能运用到循环结构中)。


举例1:break退出循环

public static void main(String[] args) {
int i = 0;
while (i <= 10)
{
if (i == 5){
break;
}
System.out.println(" "+i+"\n");
i++;
}
}

输出结果:

举例2:continue退出当前循环,继续下次循环

public static void main(String[] args) {
int i = 0;
while (i <= 10)
{
i = i + 1;
if (i == 5){
continue;
}
System.out.println(" "+i+"\n");
} }

输出结果:

有个问题: 如果是嵌套循环呢?

嵌套循环中break、continue的用法

一.break语句为退出当前循环,在嵌套循环中结果如下:

//break嵌套循环,退出当前内部循环
public static void main(String[] args) {
int num= 0;
for(int i=0;i<5;i++){
System.out.println("执行外部循环开始");
for(int j=0;j<5;j++){
if (i==2&&j==2){
System.out.println("i:"+i+",j:"+j);
break ;
}
num++;
System.out.println("num:"+num);
} System.out.println("执行外部循环结束");
}
System.out.println(num);
}

break只退出最内层循环,若想退出所有循环请和label语句连用,从何处结束循环:

//退出所有循环请和label语句连用
public static void main(String[] args) {
int num=0;
outermost:
for(int i=0;i<5;i++){
System.out.println("执行外部循环开始");
for(int j=0;j<5;j++){
if (i==2&&j==2){
System.out.println("i:"+i+",j:"+j);
break outermost;
}
num++;
System.out.println("num:"+num);
}
System.out.println("执行外部循环结束");
}
System.out.println(num); //
}


二、continue语句退出当次循环,嵌套结果:

//continue语句退出当次循环,嵌套结果:
public static void main(String[] args) {
int num=0;
for(int i=0;i<5;i++){
System.out.println("执行外部循环开始");
for(int j=0;j<5;j++){
if (i==2&&j==2){
System.out.println("i:"+i+",j:"+j);
System.out.println("num:"+num);
continue;
}
num++;
System.out.println("i:"+i+",j:"+j+",num:"+num);
}
System.out.println("执行外部循环结束");
}
System.out.println(num); //
}

continue语句和label语句连用,从何处继续循环:

//continue语句和label语句连用,从何处继续循环:
public static void main(String[] args) {
int num=0;
outermost:
for(int i=0;i<5;i++){
System.out.println("执行外部循环开始");
for(int j=0;j<5;j++){
if (i==2&&j==2){
System.out.println("i:"+i+",j:"+j);
System.out.println("num:"+num);
continue outermost;
}
num++;
System.out.println("i:"+i+",j:"+j+",num:"+num);
}
System.out.println("执行外部循环开始");
}
System.out.println(num); //
}

参考文档: https://www.cnblogs.com/lodadssd/p/6238370.html

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/586318.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-12
下一篇 2022-04-12

发表评论

登录后才能评论

评论列表(0条)

保存