通过Java的反射机制,获得到一个type为 java.util.List的field,如何对获得的list进行遍历?
例子如下:
Person bean:
- Java code
class Person{ private String name; private List parents;...get(),set() }
main:
- Java code
public static void main(String[] args){ Person a = new person(); Class<?> progClass = bean1.getClass(); try { Field field = progClass.getDeclaredField("parents"); field.setAccessible("true"); } catch (Exception e){ e.printStackTrace(); }}
现在想对通过field获得的parents的list进行遍历,要怎么实现?
------解决方案--------------------------------------------------------
没看懂你bean1是个啥。。。
Field field = progClass.getDeclaredField("parents");
field.setAccessible("true");
List lst = (List) field.get(a); // 这就取到该字段所引用对象了
if (lst != null) {
for (Object obj : lst) {
System.out.println(obj);
}
}