我能看到下面的代码在Java中编译通过,但不明白可能的原因是什么?
public class test {
@SuppressWarnings("unused")
public static void main(String[] args) {
abc:System.out.println(9);
}
}
我能看到下面的代码在Java中编译通过,但不明白可能的原因是什么?
public class test {
@SuppressWarnings("unused")
public static void main(String[] args) {
abc:System.out.println(9);
}
}
您在main
中的这一行是一个标记语句。
这些标记语句孤立起来没有太大用处,但它们可以与break
和continue
语句一起使用。
好的...因为这是有效的Java
代码。
如果你问关于abc:System.out.println(9);
,abc
只是一个标签语句的标签,在Java中是合法的,但如果你必须使用它,那么就意味着你的代码出了问题。
它们最常用于标记嵌套循环:
abc: for (int i = 0; i < 5; i++) {
for (int j = i; j < 10; j ++) {
if (j == 4) {
break abc; //breaks the outer loop.
}
}
}