1public class EnumBean implements Serializable { 2 private static final long serialVersionUID = 1L; 3 private static final String ENUM_CLASS = "java.lang.Enum"; 4 private int id; 5 private String name; 6 private String value; 7 8 public static List<EnumBean> enumToBeanList(Class clz) throws Throwable { 9 if (!"java.lang.Enum".equalsIgnoreCase(clz.getSuperclass().getName())) { 10 throw new IllegalArgumentException( 11 "The argument [ " + clz.getName() + " ] can not be asssigned by " + "java.lang.Enum"); 12 } else { 13 ArrayList list = new ArrayList(); 14 EnumBean bean = null; 15 Enum[] enums = null; 16 String value = null; 17 Method m = clz.getDeclaredMethod("values", (Class[]) null); 18 enums = (Enum[]) ((Enum[]) m.invoke((Object) null, (Object[]) null)); 19 Enum[] arg5 = enums; 20 int arg6 = enums.length; 21 22 for (int arg7 = 0; arg7 < arg6; ++arg7) { 23 Enum e = arg5[arg7]; 24 value = Enum.valueOf(clz, e.name()).toString(); 25 bean = new EnumBean(); 26 bean.setName(e.name()); 27 if (value.contains(":")) { 28 bean.setId(Integer.parseInt(value.substring(0, value.indexOf(":")))); 29 bean.setValue(value.substring(value.indexOf(":") + 1)); 30 } else { 31 bean.setId(e.ordinal()); 32 bean.setValue(e.name()); 33 } 34 35 list.add(bean); 36 } 37 38 return list; 39 } 40 } 41 42 public int getId() { 43 return this.id; 44 } 45 46 private void setId(int id) { 47 this.id = id; 48 } 49 50 public String getName() { 51 return this.name; 52 } 53 54 private void setName(String name) { 55 this.name = name; 56 } 57 58 public String getValue() { 59 return this.value; 60 } 61 62 private void setValue(String value) { 63 this.value = value; 64 } 65}
java 枚举转实体List
Wesley13
2021-10-11
1392 1 0
点赞
收藏
评论区
加载中...