1. ホーム
  2. java

[解決済み] switchのcase文として配列を使用する

2022-02-15 02:31:44

質問

switch文の中で配列を使うというようなことをやろうとしています。Javaでは可能なのでしょうか?もし可能でないなら、可能な解決策を説明してください。

boolean[] values = new boolean[4];

values[0] = true;
values[1] = false;
values[2] = false;
values[3] = true;

switch (values) {
    case [true, false, true, false]:
        break;
    case [false, false, true, false]:
        break;
    default:
        break;
}

解決方法は?

NO というのは、単純に無理な話です。

SwitchStatement:
    switch ( Expression ) SwitchBlock

Expressionの型はchar, byte, short, int, Character, Byte, Short, Integer, String, またはenum型(8.9節)でなければならず、さもなければコンパイル時エラーが発生します。

http://docs.oracle.com/javase/specs/jls/se7/html/jls-14.html#jls-14.11