SCJP带标签

问题描述 投票:0回答:1

由于“缺少标签z”,下面的编译会失败,但如果我只是在o = o + 2之后将z:移动到下面的一步,那么这将有效吗?这背后的逻辑是什么?

public class Breaker {
static String o = "";

public static void main(String[] args) {
z: 
o = o + 2;
for (int x = 3; x < 8; x++) {
    if (x == 4)
    break;
    if (x == 6)
    break z;
    o = o + x;
}
System.out.println(o);
}
}
java scjp
1个回答
2
投票

您无法在代码中随处放置标签。它应该只在陈述之前。在这种情况下labelname: for(;;){}这是documentation

© www.soinside.com 2019 - 2024. All rights reserved.