反射怎么判断LIST中的类型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了反射怎么判断LIST中的类型相关的知识,希望对你有一定的参考价值。
参考技术A public class NewClass public static void main(String[] args) ArrayList<String> list = new ArrayList<String>(); Method[] methods = list.getClass().getMethods(); for (int idx = 0; idx < methods.length; idx++) if (methods[idx].getName().equals("add")) try methods[idx].invoke(list, "Hello"); catch (Exception ex) // Logger.getLogger(NewClass.class.getName()).log(Level.SEVERE, null, ex); System.out.println(Arrays.toString(list.toArray()));java 反射机制,通过字符串获取一个类的属性,并且得到这个属性是啥类型的。
我现在是通过取得Field[]然后循环比较来实现的
for (int i = 0; i < fields.length; i++)
if (fields[i].getName().equalsIgnoreCase(name))
// 判断是不是List类型
if (fields[i].getType().getName().equals(
"java.util.List"))
//一个一个比较后,才得到了List的泛型
Type type = fields[i].getGenericType();
}
}
有没有更好的办法,不用循环比较,直接根据字符串得到对象属性的类型。
以上是关于反射怎么判断LIST中的类型的主要内容,如果未能解决你的问题,请参考以下文章