【发布时间】:2018-08-08 04:19:30
【问题描述】:
我正在处理一个遗留项目,我发现了类似的东西:
test:{
if(1 == 1) {
System.out.println("Oups");
break test;
}
System.out.println("Hello World");
}
我用谷歌搜索,但似乎没有什么与这种结构相匹配。
当然,这部分代码编译运行... ????
有人知道那是做什么的吗?
【问题讨论】:
-
test:称为标签。就像在循环中一样,break跳转到块的末尾。虽然它有效,但标签通常过于混乱,部分原因是它们很少使用,所以我会避免使用它们。自 1.0 版以来,这一直是 Java 的一部分,并且在 Java 10 中仍受支持。 -
@PeterLawrey:我不知道Java,但是.NET框架内部实现使用了很多标签。
-
@PeterLawrey:好的,谢谢
标签: java java-6 legacy-code legacy-app