程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java從list中掏出對象並取得其屬性值的辦法

java從list中掏出對象並取得其屬性值的辦法

編輯:關於JAVA

java從list中掏出對象並取得其屬性值的辦法。本站提示廣大學習愛好者:(java從list中掏出對象並取得其屬性值的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是java從list中掏出對象並取得其屬性值的辦法正文


比來公司的項目須要導出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文件的生成,導出了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved