龙空技术网

break、continue以及return有什么区别?

兔子六号 186

前言:

眼前各位老铁们对“java中break是跳出当前循环还是所有循环”大致比较看重,兄弟们都需要了解一些“java中break是跳出当前循环还是所有循环”的相关资讯。那么小编在网络上网罗了一些关于“java中break是跳出当前循环还是所有循环””的相关知识,希望兄弟们能喜欢,大家快快来了解一下吧!

问:break、continue以及return有什么区别?

答:break、continue以及return的区别如下:

1)break用于直接强行跳出当前循环,不再执行剩余代码。当循环中遇到break语句时,忽略循环体中任何其他语句和循环条件测试,程序控制在循环体后面的语句重新开始。所以,当多层循环嵌套,并且break语句出现在嵌套循环中的内层循环时,它将仅仅只是终止了内层循环的执行,而不影响外层循环的执行。

2)continue用于停止当次循环,回到循环起始处,进入下一次循环操作。continue语句之后的语句将不再执行,用于跳过循环体中的一部分语句,也就是不执行这部分语句,而不是跳出整个循环执行下一条语句,这就是continue与break的主要区别。简单来说,continue只是中断一次循环的执行而已。

3)return语句是一个跳转语句,用来表示从一个方法返回(返回一个值或其他复杂类型),可以使程序控制返回到调用该方法的地方。当执行main方法时,return语句可以使程序执行返回到Java运行系统。

break只能跳出当前的循环,那么如何才能跳出多重循环呢?可以在多重循环的外面定义一个标识,然后在循环体里使用带有标识的break语句,这样即可跳出多重循环,示例如下:

引申:Java语言中是否存在goto关键字?

虽然关键字goto作为Java的保留字,但目前并没有在Java中使用。在C/C++中,goto常被用于跳出多重循环,而在Java语言中,可以使用break和continue来达到同样的效果。

那么,既然goto没有在Java语言中使用,为什么还要把它作为保留字呢?其中一个原因就是这个关键字有可能会在将来被使用。如果现在不把goto作为保留字,开发人员就有可能用goto作为变量名来使用。一旦有一天Java支持goto关键字了,这会导致以前的程序无法正常运行,因此把goto作为保留字是非常有必要的。

这里需要注意的是,在Java语言中,虽然没有goto语句,但是却能使用标识符加冒号(:)的形式定义标签,如“mylabel:”,这主要是为了在多重循环中方便使用break和coutinue而设计的。

标签: #java中break是跳出当前循环还是所有循环