java枚举通过key获取value,通过value获取key

下面用实例代码进行演示:

@Getter
public enum YesOrNotEnum {
    
    

    /**
     * 是
     */
    Y("Y", "是"),

    /**
     * 否
     */
    N("N", "否");

    private final String code;

    private final String message;

    YesOrNotEnum(String code, String message) {
    
    
        this.code = code;
        this.message = message;
    }

    private String code() {
    
    
        return this.code;
    }

    private String message() {
    
    
        return this.message;
    }

    /**
     * 根据key获取value
     *
     * @param code
     * @return
     */
    public static String getValue(String code) {
    
    
        YesOrNotEnum[] yesOrNotEnums = values();
        for (YesOrNotEnum yesOrNotEnum : yesOrNotEnums) {
    
    
            if (yesOrNotEnum.code().equals(code)) {
    
    
                return yesOrNotEnum.message();
            }
        }
        return null;
    }

    /**
     * 根据value获取key
     *
     * @param message
     * @return
     */
    public static String getCode(String message) {
    
    
        YesOrNotEnum[] yesOrNotEnums = values();
        for (YesOrNotEnum yesOrNotEnum : yesOrNotEnums) {
    
    
            if (yesOrNotEnum.message().equals(message)) {
    
    
                return yesOrNotEnum.code();
            }
        }
        return null;
    }
}

猜你喜欢

转载自blog.csdn.net/qq_37131111/article/details/129712526