public class Main {
public static void main(String[] args) {
int n = 2;
switch (n) {
case 1:
System.out.print("one ");
case 2:
System.out.print("two ");
case 3:
System.out.print("three ");
default:
System.out.print("done");
}
}
}
選択肢
- あなたの回答
- 正解
正解
B. two three done が表示される
詳細解説
コロン形式の switch はマッチしたケースから実行を開始し、break がなければ次の case へ処理が流れます(フォールスルー)。n=2 なので case 2 から始まり case 3 と default まで続けて実行されます。
なぜ他の選択肢が違うのか
- break がないため two だけで止まりません。
- case 3 も実行されるため three も表示されます。
- コロン形式の switch はフォールスルーする正当な Java 構文です。
罠ポイント
アロー形式(case x ->)はフォールスルーしません。コロン形式(case x:)は break を忘れるとフォールスルーします。