在switch语句Java中使用枚举

时间:2014-06-06 14:16:13

标签: java enums switch-statement

我会让它简短快捷。 我有一个表示"命令"的枚举,这些命令是从网络发送的,因此它们会从字符转换为字节 -

public static enum Command {

    EXIT('E'),
    PLAY('P'),
    OK('O'),
    ROTATE('R'),
    FORWARD('W'),
    BACKWARD('S'),
    LIFT('L'),
    TURRET('T'),
    FIRE('F');

    private final byte command;

    private Command(char command) {
        this.command = ((byte) (command & 0xFF));
    }

    public byte asByte() {
        return command;
    }

    public char asChar() {
        return (char) command;
    }

}

但是,出于某种原因,我在尝试"切换"时遇到以下错误?他们 -

  

需要持续表达

这是switch语句:

 public void readData(byte[] data) {   

    switch (data[0]) {
        case Command.PLAY.asByte():
            sendCommand(new byte[]{Command.OK.asByte(), 0});
            break;
    }
}

由于错误,开关未完成 任何帮助都会受到欢迎。

0 个答案:

没有答案