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;
        }
    }
  • 相关阅读:
    java Object 类 与 Wrapper包装类
    java == 和equals()
    CPPU OJ | 开发日志
    第十八次CSP认证游记 | 2019.12.15
    CTF入门 |“男神”背后的隐写术
    Luogu2422 | 良好的感觉 (单调栈)
    Luogu4316 | 绿豆蛙的归宿 (期望DP)
    简单电路中的逻辑学(一)
    UVA12124 | Assemble (二分)
    这里是一些常用的工具网站
  • 原文地址:https://www.cnblogs.com/wang-yi/p/9927421.html
Copyright © 2011-2022 走看看