public class EnumUtil
extends java.lang.Object
| 构造器和说明 |
|---|
EnumUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static <T extends java.lang.Enum<T>> |
fromString(java.lang.Class<T> enumClass,
java.lang.String value)
字符串转枚举,调用
Enum.valueOf(Class, String) |
static <E extends java.lang.Enum<E>> |
getEnumMap(java.lang.Class<E> enumClass)
获取枚举字符串值和枚举对象的Map对应,使用LinkedHashMap保证有序
结果中键为枚举名,值为枚举对象 |
static java.util.List<java.lang.String> |
getFieldNames(java.lang.Class<? extends java.lang.Enum<?>> clazz)
获得枚举类中所有的字段名
除用户自定义的字段名,也包括“name”字段,例如: EnumUtil.getFieldNames(Color.class) == ["name", "index"] |
static java.util.List<java.lang.Object> |
getFieldValues(java.lang.Class<? extends java.lang.Enum<?>> clazz,
java.lang.String fieldName)
获得枚举类中各枚举对象下指定字段的值
|
static java.util.Map<java.lang.String,java.lang.Object> |
getNameFieldMap(java.lang.Class<? extends java.lang.Enum<?>> clazz,
java.lang.String fieldName)
获得枚举名对应指定字段值的Map
键为枚举名,值为字段值 |
static java.util.List<java.lang.String> |
getNames(java.lang.Class<? extends java.lang.Enum<?>> clazz)
枚举类中所有枚举对象的name列表
|
static boolean |
isEnum(java.lang.Class<?> clazz)
指定类是否为Enum类
|
static boolean |
isEnum(java.lang.Object obj)
指定类是否为Enum类
|
static <T extends java.lang.Enum<T>> |
likeValueOf(java.lang.Class<T> enumClass,
java.lang.Object value)
模糊匹配转换为枚举,给定一个值,匹配枚举中定义的所有字段名(包括name属性),一旦匹配到返回这个枚举对象,否则返回null
|
static java.lang.String |
toString(java.lang.Enum<?> e)
Enum对象转String,调用
Enum.name() 方法 |
public static boolean isEnum(java.lang.Class<?> clazz)
clazz - 类public static boolean isEnum(java.lang.Object obj)
obj - 类public static java.lang.String toString(java.lang.Enum<?> e)
Enum.name() 方法e - Enumpublic static <T extends java.lang.Enum<T>> T fromString(java.lang.Class<T> enumClass,
java.lang.String value)
Enum.valueOf(Class, String)T - 枚举类型泛型enumClass - 枚举类value - 值public static <T extends java.lang.Enum<T>> T likeValueOf(java.lang.Class<T> enumClass,
java.lang.Object value)
enumClass - 枚举类value - 值public static java.util.List<java.lang.String> getNames(java.lang.Class<? extends java.lang.Enum<?>> clazz)
clazz - 枚举类public static java.util.List<java.lang.Object> getFieldValues(java.lang.Class<? extends java.lang.Enum<?>> clazz,
java.lang.String fieldName)
clazz - 枚举类fieldName - 字段名,最终调用getXXX方法public static java.util.List<java.lang.String> getFieldNames(java.lang.Class<? extends java.lang.Enum<?>> clazz)
EnumUtil.getFieldNames(Color.class) == ["name", "index"]
clazz - 枚举类public static <E extends java.lang.Enum<E>> java.util.LinkedHashMap<java.lang.String,E> getEnumMap(java.lang.Class<E> enumClass)
enumClass - 枚举类public static java.util.Map<java.lang.String,java.lang.Object> getNameFieldMap(java.lang.Class<? extends java.lang.Enum<?>> clazz,
java.lang.String fieldName)
clazz - 枚举类fieldName - 字段名,最终调用getXXX方法Copyright © 2019. All rights reserved.