switch 式 (アロー構文)
出力はどれか。
public class Main {
public static void main(String[] args) {
String day = "SUN";
int n = switch (day) {
case "SAT", "SUN" -> 0;
default -> 1;
};
System.out.println(n);
}
}
- A
0 - B
1 - C
01 - D コンパイルエラーになる
正解と解説を見る
正解: A
- A: "SUN" は
case "SAT", "SUN"に一致するので 0 です。 - B: "SUN" は case に一致するので default には進みません。
- C: switch 式は1つの値を返します。アロー構文はフォールスルーしません。
- D: case にカンマで複数の値を書くのは正しい書き方です。
ポイント
- switch 式は値を返します。
->の右側の値が式の値です。case にはカンマで複数の値を書けます。 - アロー構文はフォールスルーしないので break は不要です。最後の
;を忘れないようにします。