Javaのlabelラベルは、ループや分岐文のターゲットとして使用されます。
Javaにおけるlabelラベルとは、ループや条件分岐、コードブロックの開始や終了を示す識別子です。その役割は特定のラベル位置へ飛んでコードを実行することで、主に複雑にネストされたループや条件分岐においてより柔軟な制御フローを提供するために使用されます。
ラベルはbreak文やcontinue文と一緒に使われることが多い。 break文にラベルを使用すると、ループから早期に抜けるまたは多重ループから抜けることができる。 continue文にラベルを使用すると、現在のループの反復をスキップして次の反復に進むことができる。
ラベルを使ってループを制御する例を次に示します。
outerLoop:
for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 3; j++) {
if (i == 2 && j == 2) {
break outerLoop; // 终止外层循环
}
System.out.println("i: " + i + ", j: " + j);
}
}
上の例では、outerLoop というラベルで外側のループにラベル付けしています。内側のループが i が 2 でかつ j が 2 のときに、break 文と outerLoop ラベルを使って外側のループを早期に終了させます。出力結果は次のようになります。
i: 1, j: 1
i: 1, j: 2
i: 1, j: 3
ラベルの過剰使用はコードを理解しにくく、保守しにくいため注意する必要があります。そのため、複雑な制御フローで使用する場合を除いて、ほとんどのケースでは、使用を避けることを推奨します。