枚舉類型中不僅可以聲明枚舉的名稱,還可以加入附加的值如下式:
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值的判斷,即可傳回枚舉類型的執行個體。