我一直都知道Java中的标签用于循环,例如:
myLoop: for(;;) {
// codez
break myLoop;
}
但只是重新发现我发现这是有效的:
myLabel: System.out.println("");
为什么要这样做?这有什么用(如果有的话)?
答案 0 :(得分:1)
控件结构顶部的标签会在调用break myLoop;
后导致执行在控件结构的 end 处继续执行。
在不在控制结构之前的行上放置标签并不做任何事情。没有意义,但至少它是无害的。
Labels are described here in the Java language specification。没有什么可以阻止你在任何声明上贴上标签。也许Java的设计者并不想限制哪些语句可以被标记,这样如果他们引入了新的控制结构,他们就不必将它添加到可以标记的语句集中。 / p>