switch中使用枚举

package Enum;

/**
 * @Author:
 * @Description:switch中使用枚举
 * @Date:16:46 2018/4/20
 * @Modified by:
 */
public enum OpCodeEnum {
    ADD("加"),
    SUB("减"),
    MUL("乘"),
    DIV("除"),
    INC("自增"),
    DEC("自减"),
    LT("小于"),
    GT("大于"),
    EQ("等于"),
    ISZERO("是否为0"),
    NULL("null"),
    NOT("不等于"),
    RETURN("返回"),
    MOD("取余"),
    AND("并且"),
    OR("或者");

    private String msg;

    OpCodeEnum(String msg) {
        this.msg = msg;
    }

    /*
    * 匹配操作码
    * */
    public static OpCodeEnum matchOpCode(String opCodeStr) {
        for (OpCodeEnum opCode : OpCodeEnum.values()) {
            if (opCode.name().equalsIgnoreCase(opCodeStr)) {
                return opCode;
            }
        }
        return OpCodeEnum.NULL;
    }

    public static void main(String[] args) {
        //switch中使用枚举
        String opStr = "add";
        switch (OpCodeEnum.matchOpCode(opStr)) {
            case ADD:
                System.out.println("加法");
                break;
            case SUB:
                System.out.println("减法");
                break;
            case MUL:
                System.out.println("乘法");
                break;
            case DIV:
                System.out.println("除法");
                break;
        }
    }
}

猜你喜欢

转载自blog.csdn.net/m0_37754981/article/details/80022169