即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

Java语言 枚举模版

编程语言 yang786654260 9℃ 0评论
本文目录
[隐藏]

1.项目中使用枚举,为了方便,编辑了模版,每次都能自动生成这些轮子:

1

2

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

import java.util.HashMap;

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end enum ${NAME} #if (${INTERFACES} != "")implements ${INTERFACES} #end {

    ONE(1, "one"),
    TWO(2, "two"),
    ;

    private Integer value;

    private String desc;


    ${NAME}(Integer value, String desc) {
        this.value = value;
        this.desc = desc;
    }

    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }


    public static Integer getValueByDesc(String desc){
        for (${NAME} enumItem : ${NAME}.values()) {
            if(enumItem.getDesc().equals(desc)){
                return enumItem.getValue();
            }
        }
        return -1;
    }

    public static String getDescByValue(Integer value){
        for (${NAME} enumItem : ${NAME}.values()) {
            if(enumItem.getValue().equals(value)){
                return enumItem.getDesc();
            }
        }
        return "";
    }

    public static HashMap getMapData() {
        HashMap map = new HashMap<>();
        for (${NAME} enumItem : ${NAME}.values()) {
            map.put(enumItem.getValue(), enumItem.getDesc());
        }
        return map;
    }
}

转载请注明:CodingBlog » Java语言 枚举模版

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情