public enum Category {
DISPLAY(1,"user.language.display", "user.script.display", "user.country.display", "user.variant.display"),
FORMAT(2,"user.language.format", "user.script.format", "user.country.format", "user.variant.format");
final int id;
final String languageKey;
final String scriptKey;
final String countryKey;
final String variantKey;
Category(int id,String languageKey, String scriptKey, String countryKey, String variantKey) {
this.id=id;
this.languageKey=languageKey;
this.scriptKey=scriptKey;
this.countryKey=countryKey;
this.variantKey=variantKey;
}
public int getId() {
return id;
}
public String getLanguageKey() {
return languageKey;
}
public String getScriptKey() {
return scriptKey;
}
public String getCountryKey() {
return countryKey;
}
public String getVariantKey() {
return variantKey;
}
public static Category getValue(int id) {
for(Category category:values()) {
if(category.getId()==id) {
return category;
}
}
return null;
}
}
各种方法做用:
values() 遍历enum中定义的常量值;
valueOf(String) 根据枚举常量名获取枚举常量。