java从list中取出对象并获得其属性值的方法_Java教程-查字典教程网
java从list中取出对象并获得其属性值的方法
java从list中取出对象并获得其属性值的方法
发布时间:2016-12-28 来源:查字典编辑
摘要:最近公司的项目需要导出csv文件,一个同事用最原始的方式将每条记录取出然后加“,”解决。但是客户后面要求在每个页面当中都加入这个功能。于是,...

最近公司的项目需要导出csv文件,一个同事用最原始的方式将每条记录取出然后加“,”解决。

但是客户后面要求在每个页面当中都加入这个功能。于是,问题来了,分开写代码太多,合起来又不能确定在list中存储的对象为哪个对象,不能用get方法获得属性。

我一直认为当初他那样写就将程序写死了。可是,在多次尝试后,还是通过java的反射从list中取出了对象,从对象中取出了属性值:

下面是代码:

复制代码 代码如下:

package com.hb.test;

import java.lang.reflect.Field;

import java.util.ArrayList;

import java.util.List;

public class Test {

public static void main(String[] args) throws IllegalArgumentException,

Exception {

Person p1 = new Person("111", "aaa");

Person p2 = new Person("222", "bbb");

List list = new ArrayList();

list.add(p1);

list.add(p2);

test(list);

}

public static void test(List list) throws Exception, IllegalAccessException {

for (int i = 0; i < list.size(); i++) {

Field[] fields = list.get(i).getClass().getDeclaredFields();

Object oi = list.get(i);

for (int j = 0; j < fields.length; j++) {

if(!fields[j].isAccessible()){

fields[j].setAccessible(true);

}

System.out.println(fields[j].get(oi));

}

}

}

}

这样在不知道从list中取出的为何对象的时候,也能够取得对象的属性值,就可以写出一个公共的方法来传入List对象,然后进行csv文件的生成,导出了。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Java学习
    热门Java学习
    编程开发子分类