美文网首页
break,continue,return 用法和区别

break,continue,return 用法和区别

作者: 小李不木 | 来源:发表于2019-06-10 12:54 被阅读0次

1、return 语句的作用

(1) return 从当前的方法中退出,返回到该调用的方法的语句处,继续执行。

(2) return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致,可以           使用强制类型转换来是数据类型一致。

(3) return 当方法说明中用void声明返回类型为空时,应使用这种格式,不返回任何值。

      (4)  return 0,说明程序正常退出。return 1,说明程序异常退出。

2、break语句的作用

(1) 只能在循环体内和switch语句体内使用break语句。

(2) 当break出现在循环体中的switch语句体内时,其作用只是跳出该switch语句体。

(3) 当break出现在循环体中,但并不在switch语句体内时,则在执行break后,跳出本层循环体。

(4) 在循环结构中,应用break语句使流程跳出本层循环体,从而提前结束本层循环。

3、continue语句作用

(1) continue语句的一般形式为:contonue;

(2) 其作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环的条件判定。

(3) 注意:执行continue语句并没有使整个循环终止。在while和do-while循环中,continue语句使得流程直接跳          到循环控制条件的测试部分 ,然后决定循环是否继续进行。

(4) 在for 循环中,遇到continue后,跳过循环体中余下的语句,而去对for语句中的“表达式3”求值,然后进             行“表达式2”的条件测试,最后根据“表达式2”的值来决定for循环是否执行。在循环体内,不论continue          是作为何种语句中的语句成分,都将按上述功能执行,这点与break有所不同。

   一般说来,程序进入循环体后在下次循环判断之前执行循环体里的所有语句,break和continue语句可以终止循环或忽略某些循环。

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

break和continue的区别如下: 

1. break可用于switch语句,表示跳出整个switch块,而continue则不能用于switch语句

2. 它们都可用于循环语句的循环体,所谓的区别也应该是它们对循环次数的影响不同。break用于立即退出当前循环,而continue仅跳过当次循环(本次循环体内不执行continue语句后的其它语句,但下次循环还会执行)。举例说明。

int i;

int s = 0;

for (int i = 1; i <= 10; i++)

{

if (i == 6) break;

s += i;

}

上面的循环会因为break语句而在i=6时提前终止,这样s的最终值就是1+2+3+4+5

如将break换成continue

int i;

int s = 0;

for (int i = 1; i <= 10; i++)

{

if (i == 6) continue;

s += i;

}

    当i=6时就不会将i累加到s中,s的最终值是1+2+3+4+5+7+8+9+10,唯独少一个6 

在一具循环体中,如果用break返回, 则不管其后面是否有满足for中条件的情况,都不做for中的循环体,即不会做;

如果用continue返回,如果条件满足执行continue, 跳出下面语句的执行,而返回到for 语句的开头,再次判断for中的条件,从而根据条件执行其中的循环体内容。

二者都作用的是当前循环,对于嵌套循环,如果这两者在内部循环中则只作用于内部循环。

例2:

break是结束循环 continue是结束本次循环

循环是有很多次的 break之后不再循环 continue结束本次循环后 再开始下一次的循环

.......

sum = 0

for(i = 0;i < 10; ++i) {

if(i == 4)

break;

if(i == 2)

continue;

sum += i;

}

.......

结果为:sum 为 0+1+3=4

循环计算累加和,放在sum中

过程如下:i从0开始循环,每次i++。当i == 2的时候,执行continue,跳过sum += i这句,继续循环,也就是说,2并没有加到sum中去。循环继续,i变成3,执行sum+=i。然后发现i == 4了,于是执行break,跳出for循环,也就是说,break之后,i的值固定在4了,循环语句不再被执行了,sum += i这句也就不再被执行了。

break是直接跳出循环体,而continue是跳过循环体中余下的语句(这里为sum += i;)继续执行循环。

除此之外,break还可以用在switch/case中,用来结束条件匹配,道理和在循环中一样

相关文章

网友评论

      本文标题:break,continue,return 用法和区别

      本文链接:https://www.haomeiwen.com/subject/pcfzxctx.html