热门话题白皮书HR资料
#Java系列课程#控制循环语句
2024.07.03


在Java语言中,没有goto语句控制程序的跳转,但是有continuebreakreturn来控制循环结构。


我们分别来说一下


使用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所在循环的外层循环之前定义才有意义。



牛客网—程序员必备求职神器


刷真题,练算法,看面经,得内推
www.nowcoder.com
长按二维码,把IT笔试面试题库装进



点击下方阅读原文查看更多精彩内容