有时候我们会遇到在集合List中存放有多种对象的情况,这时候我们就无法直接将List内的数据映射为具体的类,使用get的方法获取其对应属性的值。
在这种情况下我们可以使用Java的反射机制来获取List中的对象的属性和内容值。示例代码:for(int k=0;k
Field[] fields = list.get(k).getClass().getDeclaredFields();
Object oi = list.get(k);
for (int j = 0; j
if(!fields[j].isAccessible()){
fields[j].setAccessible(true);
}
try {
//获取指定属性值的值
if(fields[j].getName().equals("serial")){
System.out.println(fields[j].get(oi).toString());
}
//循环打印所有属性和对应值
System.out.println(fields[j].getName()+":"+fields[j].get(oi));
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
如此,我们就可以处理自己所需要的数据了。
原文:http://amtows.blog.51cto.com/6268328/1744303