//定义枚举publicenumTestEnum{ TEST1("type1"), TEST2("type2"), TEST3("type3"); privateTestEnum(Stringtype) { this.type=type; } privateStringtype; publicStringgetType() { returnthis.type; } }
getNames
获取枚举类中所有枚举对象的name列表。栗子:
//定义枚举publicenumTestEnum { TEST1, TEST2, TEST3; }
List<String>names=EnumUtil.getNames(TestEnum.class); //结果:[TEST1, TEST2, TEST3]
getFieldValues
获得枚举类中各枚举对象下指定字段的值。栗子:
List<Object>types=EnumUtil.getFieldValues(TestEnum.class, "type"); //结果:[type1, type2, type3]
getEnumMap
获取枚举字符串值和枚举对象的Map对应,使用LinkedHashMap保证有序,结果中键为枚举名,值为枚举对象。栗子:
Map<String,TestEnum>enumMap=EnumUtil.getEnumMap(TestEnum.class); enumMap.get("TEST1") // 结果为:TestEnum.TEST1
getNameFieldMap
获得枚举名对应指定字段值的Map,键为枚举名,值为字段值。栗子:
Map<String, Object>enumMap=EnumUtil.getNameFieldMap(TestEnum.class, "type"); enumMap.get("TEST1") // 结果为:type1