【技巧】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);
}
}