枚举类型中不仅可以声明枚举的名称,还可以加入附加的值如下式:
public static enum PushType{
PUSH_TYPE_SYS("0"),
PUSH_TYPE_CAMPUS("1"),
PUSH_TYPE_USER("2");
private String typeValue;
PushType(String value){
typeValue = value;
}
public String toString(){
return typeValue;
}
}
其中PUSH_TYPE_SYS称为枚举的Name,0则为枚举类型的Value,那如何才能根据枚举类型的value获取枚举类型的实例呢?
代码见下:
public static PushType getPushType(String value) {
for (PushType type : PushType.values()) {
if (type.toString().equals(value)) {
return type;
}
}
return PUSH_TYPE_USER;
}
通过一个内部的遍历和value值的判断,即可返回枚举类型的实例。