我们在编写程序的时候,肯定是少不了枚举值。但是我们如何去获取枚举里面的值呢?

首先我们先创建一个枚举类,并写通过key获取value 和通过value获取key的方法

public enum ProvisionEnum {


    NO_SUBMIT(0,"未提交"), SUBMIT(1,"已提交"),
    MODIFY(2,"已修改"),SUBMIT_MODIFY(3,"已提交修改"),
    DELETE(4,"已删除"),FAILURE(5,"已失效");

    private int code;
    private String message;

    private ProvisionEnum(int code, String message) {
        this.code = code;
        this.message = message;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public static ProvisionEnum match(int key) {

        ProvisionEnum result = null;

        for (ProvisionEnum s : values()) {
            if (s.getCode()==key) {
                result = s;
                break;
            }
        }

        return result;
    }

    public static ProvisionEnum catchMessage(String msg) {

        ProvisionEnum result = null;

        for (ProvisionEnum s : values()) {
            if (s.getMessage().equals(msg)) {
                result = s;
                break;
            }
        }

        return result;
    }
}

通过key获取value:

ProvisionEnum.match(key).getMessage();

通过value获取key:

ProvisionEnum.catchMessage(value).getCode();
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐