zoukankan      html  css  js  c++  java
  • java 枚举转实体List

    public class EnumBean implements Serializable {
        private static final long serialVersionUID = 1L;
        private static final String ENUM_CLASS = "java.lang.Enum";
        private int id;
        private String name;
        private String value;
    
        public static List<EnumBean> enumToBeanList(Class clz) throws Throwable {
            if (!"java.lang.Enum".equalsIgnoreCase(clz.getSuperclass().getName())) {
                throw new IllegalArgumentException(
                        "The argument [ " + clz.getName() + " ] can not be asssigned by " + "java.lang.Enum");
            } else {
                ArrayList list = new ArrayList();
                EnumBean bean = null;
                Enum[] enums = null;
                String value = null;
                Method m = clz.getDeclaredMethod("values", (Class[]) null);
                enums = (Enum[]) ((Enum[]) m.invoke((Object) null, (Object[]) null));
                Enum[] arg5 = enums;
                int arg6 = enums.length;
    
                for (int arg7 = 0; arg7 < arg6; ++arg7) {
                    Enum e = arg5[arg7];
                    value = Enum.valueOf(clz, e.name()).toString();
                    bean = new EnumBean();
                    bean.setName(e.name());
                    if (value.contains(":")) {
                        bean.setId(Integer.parseInt(value.substring(0, value.indexOf(":"))));
                        bean.setValue(value.substring(value.indexOf(":") + 1));
                    } else {
                        bean.setId(e.ordinal());
                        bean.setValue(e.name());
                    }
    
                    list.add(bean);
                }
    
                return list;
            }
        }
    
        public int getId() {
            return this.id;
        }
    
        private void setId(int id) {
            this.id = id;
        }
    
        public String getName() {
            return this.name;
        }
    
        private void setName(String name) {
            this.name = name;
        }
    
        public String getValue() {
            return this.value;
        }
    
        private void setValue(String value) {
            this.value = value;
        }
    }
  • 相关阅读:
    7、注解@Mapper、@MapperScan
    SpringBoot
    正则表达式"(^|&)" ,什么意思?
    JSON.NET的Self referencing loop detected with type的原因以及解决办法
    jquery ajax 中各个事件执行顺序
    Lucene BooleanQuery中的Occur.MUST与Occur.Should
    lucene中Field简析
    IDENTITY、SCOPE_IDENTITY、IDENT_CURRENT的分析
    HTML5学习(1)简介
    HTML学习(17)URL
  • 原文地址:https://www.cnblogs.com/wang-yi/p/9927421.html
Copyright © 2011-2022 走看看