【技巧】JAVA 枚举 技巧整理

【技巧】JAVA 枚举 技巧整理



import java.util.HashMap;
import java.util.Map;


public enum WebSearchEnum {
    

    百度搜索(WebSearchConstant.百度搜索, "百度搜索"),
    百度资讯(WebSearchConstant.百度资讯, "百度资讯")
    ;

    
    //map 用来存储枚举
    private static final Map<String, WebSearchEnum> MAP = new HashMap<>();
    
    //用来初始化枚举到map
    static {
        for (WebSearchEnum result : WebSearchEnum.values()) {
            MAP.put(result.name, result);
        }
    }
    
    /**
     * 名称
     */
    public final String name;
    /**
     * 说明
     */
    public final String explain;

    WebSearchEnum(String name, String explain) {
        this.name = name;
        this.explain = explain;
    }


    /**
     * 根据name 获取 枚举
     * @return   枚举实例
     */
    public static WebSearchEnum getEnum(String name) {
        return MAP.get(name);
    }
    
    
    @Override
    public String toString() {
        return name;
    }

    public static void main(String[] args) {

        WebSearchEnum baiDuSouSuo = WebSearchEnum.getEnum("BaiDuSouSuo");
        System.out.println(baiDuSouSuo);


    }
    
}

猜你喜欢

转载自blog.csdn.net/G971005287W/article/details/134660532