switch 文のフォールスルー
出力はどれか。
public class Main {
public static void main(String[] args) {
int n = 2;
switch (n) {
case 1:
System.out.print("A");
case 2:
System.out.print("B");
case 3:
System.out.print("C");
break;
default:
System.out.print("D");
}
}
}
- A
BC - B
B - C
BCD - D
ABC
正解と解説を見る
正解: A
- A: case 2 から実行が始まり、break の無い case 3 まで続けて実行されます。
- B: case 2 に break が無いので、次の case 3 も実行されます (フォールスルー)。
- C: case 3 の break で抜けるので default は実行されません。
- D: 実行は一致した case 2 から始まるので、A は出力されません。
ポイント
- 一致した case から実行が始まり、break までの次の case も続けて実行されます (フォールスルー)。
「分岐文 (if、if/else、switch) の使用」をこのサイトで解く (記録・間違えた問題の解き直し・AI教師への質問)