您的位置:首页 > 编程语言 > Java开发

Java中带标签的break语句

2018-03-05 10:20 197 查看
如有错误或遗漏,敬请指正!

在Donald Kunth的《Structured Programming with goto statements》一文中指出:无限制地使用goto语句确实是导致错误语句的根源,但在某些情况下,偶尔使用goto跳出循环还是有益处的。

Java保留了goto关键字,但是并没有实现它。Java为了支持goto语句的程序设计风格,提供了带有标签的break语句,这是功能受到严格限制的“goto语句”。

break语句的格式:

label:statement {

...

break label;

...

};


当触发break label时,会跳出整个statement语句,然后继续执行statement后面的语句。

注意:


break label语句只能跳出语句,并且只能跳出紧跟在label后的一个语句。

Java中break语句在不带有标签时,只能跳出其所在的最内层循环;当break语句带有标签时,则会跳出其所在循环的所有循环。

来看一个break label语句的例子:

public class BreakLabelDemo {
public static void main(String[] args) {

label_dem01: {
System.out.println("Hello break label demo1");
for (int i = 0; i < 10; i++) {
for (int k = 0; k < 10; k++) {
if (k + i == 15) {
System.out.println("break label happend");
break label_dem01;
}
}
}
}

System.out.println("beak all loop now");
}
}


程序运行结果:

Hello break label demo1
break label happend
beak all loop now
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: