私は以下のコードをJavaでコンパイルすることができますが、何が原因であるか理解できませんでしたか?あなたのmain
でこのコードはなぜJavaでコンパイルされますか?
public class test {
@SuppressWarnings("unused")
public static void main(String[] args) {
abc:System.out.println(9);
}
}
私は以下のコードをJavaでコンパイルすることができますが、何が原因であるか理解できませんでしたか?あなたのmain
でこのコードはなぜJavaでコンパイルされますか?
public class test {
@SuppressWarnings("unused")
public static void main(String[] args) {
abc:System.out.println(9);
}
}
行がlabelled statementです。
これらのラベルはあまり使用されていませんが、break
およびcontinue
ステートメントで使用できます。
私は '使用可能ですが、使用するべきではないことを付け加えます;) – AxelH
まあ...それは有効な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.
}
}
}
これでgoto文を使って覚えています。しかし、もはや使用されていないので、私の心の外に出ました。答えの人々ありがとう。感謝する! – pd30
このJavaコードは何も問題はありません。ここではabcがラベルとして使用されています。 – suren