说明在循环中使用break和continue,return语句之间的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了说明在循环中使用break和continue,return语句之间的区别相关的知识,希望对你有一定的参考价值。

循环中使用break和continue,return语句之间的区别:含义不同,方式不同。

一、含义不同:

break是跳出当前整个循环语句,而continue是跳过当前循环的某一个条件语句的动作,return则是跳出当前函数而不往下继续执行。

二、方式不同:

break语句导致程序终止包含它的循环,并进行程序的下一阶段,不是跳到下一个循环周期而是退出循环。如果break语句包含在嵌套循环里,它只跳出最里面的循环。

continue循环语句里有此语句时,程序运行到此语句时,不在执行循环体里continue后面的语句而是跳到下一个循环入口处执行下一个循环。

return是表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。

说明

通常在 switch 语句和 while、for、for...in、或 do...while 循环中使用 break 语句。 最一般的是在 switch 语句中使用 label 参数,但它可在任何语句中使用,无论是简单语句还是复合语句。

执行 break 语句会退出当前循环或语句,并开始脚本执行紧接着的语句。

例如,以下都是表达式语句:

a=3+5;

a>b?a:b;

a=1,b=2,c=3;

printf(“hello\\n”);

常见的表达式语句有以下几种:空语句、赋值语句、函数调用语句。

以上内容参考:百度百科-break语句

参考技术A

如下代码

12345678910

public class Test     public static void main(String[] args)         for(int i=0; i<10; i++)            if(i==5)                break;                        System.out.print(i+" ");            

可以看到程序输出了01234到5的时候跳出了循环

continue:循环语句里有此语句时,程序运行到此语句时,不在执行循环体里continue后面的语句而是跳到下一个循环入口处执行下一个循环。

把break改为continue

12345678910

public class Test     public static void main(String[] args)         for(int i=0; i<10; i++)            if(i==5)                continue;                        System.out.print(i+" ");            

可以看到只有5没有输出,也即当i=5时没有执行打印操作,直接到下一次循环

而return是表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。return后函数就结束了,后面的语句不再执行

1234567891011121314

public class Test     public static void fun()        for(int i=0; i<10; i++)            if(i==5)                return;                        System.out.print(i+" ");                System.out.println("hello");        public static void main(String[] args)         fun();    

参考技术B

break:
此语句导致程序终止包含它的循环,并进行程序的下一阶段(整个循环后面的语句),即,不是跳到下一个循环周期而是退出循环。如果break语句包含在嵌套循环里,它只跳出最里面的循环。
如下代码
public class Test 
public static void main(String[] args) 
for(int i=0; i<10; i++)
if(i==5)
break;

System.out.print(i+" ");



可以看到程序输出了01234到5的时候跳出了循环
continue:循环语句里有此语句时,程序运行到此语句时,不在执行循环体里continue后面的语句而是跳到下一个循环入口处执行下一个循环。
把break改为continue
public class Test 
public static void main(String[] args) 
for(int i=0; i<10; i++)
if(i==5)
continue;

System.out.print(i+" ");



可以看到只有5没有输出,也即当i=5时没有执行打印操作,直接到下一次循环
而return是表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。return后函数就结束了,后面的语句不再执行
public class Test 
public static void fun()
for(int i=0; i<10; i++)
if(i==5)
return;

System.out.print(i+" ");

System.out.println("hello");

public static void main(String[] args) 
fun();


可以看到后面的hello并没有打印出来

参考技术C

break: 此语句导致程序终止包含它的循环,并进行程序的下一阶段(整个循环后面的语句),即,不是跳到下一个循环周期而是退出循环。如果break语句包含在嵌套循环里,它只跳出最里面的循环。

如下代码

public class Test 
public static void main(String[] args) 
for(int i=0; i<10; i++)
if(i==5)
break;

System.out.print(i+" ");


可以看到程序输出了01234到5的时候跳出了循环



continue:循环语句里有此语句时,程序运行到此语句时,不在执行循环体里continue后面的语句而是跳到下一个循环入口处执行下一个循环。

把break改为continue

public class Test 
public static void main(String[] args) 
for(int i=0; i<10; i++)
if(i==5)
continue;

System.out.print(i+" ");



可以看到只有5没有输出,也即当i=5时没有执行打印操作,直接到下一次循环


而return是表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。return后函数就结束了,后面的语句不再执行

public class Test 
public static void fun()
for(int i=0; i<10; i++)
if(i==5)
return;

System.out.print(i+" ");

System.out.println("hello");

public static void main(String[] args) 
fun();


可以看到后面的hello并没有打印出来

参考技术D break是跳出当前整个循环语句,而continue是跳过当前循环的某一个条件语句的动作,return则是跳出当前函数而不往下继续执行。希望采纳

break和continue 的区别

区别

 breakcontinue都可在循环语句里面使用,也都可以控制外层的循环。但是continue只能在循环语句里面使用,break也可以使用在switch语句里面。

break具体作用在循环语句中的具体作用是,跳出当前循环,当然还可以跳出所有的循环。当前循环中break语句之后的语句都不会执行。

break跳出当前循环:

 1 public class Test {
 2     public static void main(String[] args) {
 3     //循环打印1,2,3,4
 4     for (int i = 0; i < 5; i ++) {
 5             if (i == 1) {//当i等于1的时候
 6                 break;//跳出当前循环
 7             }
 8             System.out.println(i);        
 9         }
10         
11     }
12 }
输出结果:0

跳出所有循环:给外层循环起个别名,相当与goto

 1 public class Test {
 2     public static void main(String[] args) {
 3         go : for (int j = 0; j < 5; j++) {//外层循环别名为go
 4             //循环打印1,2,3,4
 5             for (int i = 0; i < 5; i++) {
 6                 if (i == 1) {//当i等于1的时候
 7                     break go;//跳出外层循环
 8                 }
 9                 System.out.println(i);
10             }
11         }
12     }
13 }
输出结果:0

continue执行顺序

  在for循环中先执行初始化语句-------->执行条件判断语句-------->执行循环体中的内容-------->执行循环变量变化的语句-------->进行条件判断-------->循环体,直到条件不满足结束;如果在此过程中遇到continue,则返回执行循环变量变化的语句-------->执行条件判断语句--------->执行循环体中的内容,如此循环执行,知道条件不满足结束循环。

  在while中由于循环变量一般在最后的语句中,所以遇到continue之后不会循环变量不会发生改变(循环变量变化的语句在continue之前除外)。

 1 public class Test {
 2     public static void main(String[] args) {
 3         //循环打印1,2,3,4
 4         for (int i = 0; i < 5; i++) {
 5             if (i == 1) {//当i等于1的时候
 6                 continue;//继续执行外层循环
 7             }
 8             System.out.print(i);
 9         }
10     }
11 }
输出结果:0234

 

当i等于1时跳过打印操作,直接执行i++语句,再进行条件判断

==============================================

 

 

continue控制外层循环也是给外层循环起别名:

 1  1 public class Test {
 2  2     public static void main(String[] args) {
 3  3         go : for (int j = 0; j <3; j++) {//外层循环别名为go
 4  4             //循环打印1,2,3,4
 5  5             for (int i = 0; i < 5; i++) {
 6  6                 if (i == 1) {//当i等于1的时候
 7  7                     continue go;//继续执行外层循环
 8  8                 }
 9  9                 System.out.print(i);
10 10             }
11 11             System.out.println();//不会执行到
12 12         }
13 13     }
14 14 }
15 输出结果:000

 

 

 

 

 

 

 

 

 

  

 

以上是关于说明在循环中使用break和continue,return语句之间的区别的主要内容,如果未能解决你的问题,请参考以下文章

举例说明c语言中的中断语句break,continue,return的区别及相同之处

break语句和continue语句

请说明break和continue的区别?用JAVA举例出来详细点··要例子

while循环中continue和break的区别

break和continue 的区别

求return,break,continu区别