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

没有人喜欢一成不变,也没有人喜欢陷入循环之中。那么该如何打破循环呢?

Java有三个大招:break、continue和return。

今天我们就来认识一下这三个大招的作用以及它们之间的区别。

1.break

break用于直接强行跳出当前循环,不再执行剩余代码。当循环中遇到break语句时,忽略循环体重任何其他语句和循环条件测试,程序控制在循环体后面的语句重新开始,

所以,当多层循环嵌套,并且break语句出现在嵌套循环在红的内存循环时,它将仅仅只是终止了内层循环的执行,而不影响外层循环的执行。

不过,break在有些情况下也是可以跳出多重循环怎么办?也不是没有办法,只不过不能光靠break来完成这个任务。它需要在多重循环的外面定义一个标识,然后在循环体里使用带有标识的break语句,这样就可以跳出多重循环了。

public class Break{
    public static void main(String args[])
    {    out:
            for(int i=0;i<5;i++){
                for(int j=0;j<5;j++){
                    if(j>=2)
                        break out;
                System.out.println(j);
                }
            }
    System.out.println("break");
    }
}

上面的程序中,当内部循环执行到j=2的时候,程序跳出双重循环,执行System.out.println("break")语句。

运行结果:

 

2.continue

continue用于停止当前循环,回到循环起始处,进入下一次循环操作。continue语句之后的语句将不再执行,用于跳过循环体重的一部分语句,也就是不执行这部分语句,而不是跳出整个循环执行吓一跳语句,这就是continue与break的主要区别。

简单地来说,,continue只是中断一次循环的执行而已。

3.return

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

看完上面的总结,学过c的小伙伴们可能感觉似乎少了点什么。少了什么呢?

goto!对,就是goto!

在c中有goto语句,那么在Java语言中是否还存在goto关键字呢?

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

到这里可能有的小伙伴心里就犯嘀咕了:既然goto没有在Java语言中使用,为什么还要把它作为保留字呢?

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

这里需要注意到一点是,在Java语言中,虽然没有goto语句,但是却能使用标识符加冒号的形式定义标签,如上文实例程序中的“out:”,这主要是为了在多重循环中方便使用break和continue而设计的。

好啦,以上就是关于break、continue和return的相关知识总结啦,如果大家有什么好的见解或者发现文中有描述不当的地方,欢迎大家留言评论,我们一起学习呀~~

Biu~~~~~~~~~~~~~~~~~~~~宫å´éªé¾ç«è¡¨æå|é¾ç«gifå¾è¡¨æåä¸è½½å¾ç~~~~~~~~~~~~~~~~~~~~~~pia!

猜你喜欢

转载自blog.csdn.net/Searchin_R/article/details/84641117