Java获取枚举类型

不使用Enum默认的valueOf方法获取枚举类型。

public enum VerificationEnum {

    Client,

    Server,

    ;

}
public final class EnumUtil {

    /**
     * 获取枚举
     *
     * @param clazz clazz
     * @param str   str
     * @return Enum<?>
     */
    public static Enum<?> valueOf(Class<? extends Enum<?>> clazz, String str) {
        if (clazz.isEnum()) {
            Enum<?>[] enums = clazz.getEnumConstants();
            for (Enum<?> anEnum : enums) {
                if (anEnum.name().equals(str)) {
                    return anEnum;
                }
            }
        }
        return null;
    }
}

 

posted @ 2021-05-17 11:22  Se7end  阅读(2450)  评论(0编辑  收藏  举报