在Java语言中,没有goto语句控制程序的跳转,但是有continue和break,return来控制循环结构。
我们分别来说一下
使用break结束循环
有时候我们想让某种条件出现就停止循环,而不是等到循环条件为假的时候才停止,这个时候就可以用break来循环了,break用于完全结束一个循环,跳出循环体。不管是哪一种循环,只要循环体中遇到break,系统将完全结束该循环,开始执行循环之后的代码。使用break语句可以终止switch语句或者循环语句的执行。我们来看一下这个程序:
public class Niukewang{
public static void main(String [] args){
for(int i=0;i<10;i++){
System.out.println(i);
if(i==2){
break;
}
}
}
}
也就是说运行这个程序,i循环到2的时候就结束了,当i等于2的时候,循环体内遇到break语句,程序跳出该循环。
需要注意的是break语句不仅仅可以技术所在的循环,还可以直接结束其外层循环。此时需要在break后紧跟一个标签,这个标签用于标识一个外层循环。
Java中的标签就是一二个紧跟着英文冒号(:)的标识符,与其他语言不同的是,Java中的标签直邮放在循环语句之前才有作用,来看这段代码:
public class Niukewang{
public static void main(String [] args){
outer:
for(int i=0;i<5;i++){
for(int j=0;j<3;j++){
System.out.println(i);
System.out.println(j);
if(j==1){
break outer;
}
}
}
}
}
当程序从外层循环进入内层循环后,当j=1的时候,程序遇到一个break outer语句,这行代码将会导致结束outer标签制定的循环,不是结束break所在的循环,而是结束break循环的外层循环。
需要注意的是,break后标签必须是一个有效的标签,也就是说这个标签必须在break语句所在的循环之前定义,或者在其所在循环的外层循环之前定义。当然啦,如果这个标签放在break语句所在循环之前定义,也就失去了标签的意义,因为break默认就是结束其所在的循环。
通常紧跟break之后的标签,必须在break所在循环的外层循环之前定义才有意义。
牛客网—程序员必备求职神器
点击下方阅读原文查看更多精彩内容!