java從list中取出對(duì)象并獲得其屬性值的方法
最近公司的項(xiàng)目需要導(dǎo)出csv文件,一個(gè)同事用最原始的方式將每條記錄取出然后加“,”解決。
但是客戶(hù)后面要求在每個(gè)頁(yè)面當(dāng)中都加入這個(gè)功能。于是,問(wèn)題來(lái)了,分開(kāi)寫(xiě)代碼太多,合起來(lái)又不能確定在list中存儲(chǔ)的對(duì)象為哪個(gè)對(duì)象,不能用get方法獲得屬性。
我一直認(rèn)為當(dāng)初他那樣寫(xiě)就將程序?qū)懰懒???墒?,在多次嘗試后,還是通過(guò)java的反射從list中取出了對(duì)象,從對(duì)象中取出了屬性值:
下面是代碼:
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中取出的為何對(duì)象的時(shí)候,也能夠取得對(duì)象的屬性值,就可以寫(xiě)出一個(gè)公共的方法來(lái)傳入List對(duì)象,然后進(jìn)行csv文件的生成,導(dǎo)出了。
- java list用法示例詳解
- Java中List與Map初始化的一些寫(xiě)法分享
- JAVA中l(wèi)ist,set,數(shù)組之間的轉(zhuǎn)換詳解
- JSON的String字符串與Java的List列表對(duì)象的相互轉(zhuǎn)換
- JAVA ArrayList詳細(xì)介紹(示例)
- JAVA LinkedList和ArrayList的使用及性能分析
- java8從list集合中取出某一屬性的值的集合案例
- Java List轉(zhuǎn)換成String數(shù)組幾種實(shí)現(xiàn)方式詳解
- java8實(shí)現(xiàn)list集合中按照某一個(gè)值相加求和,平均值等操作代碼
- 精通Java List 按字段提取對(duì)象
相關(guān)文章
SpringBoot實(shí)現(xiàn)接口的各種參數(shù)校驗(yàn)的示例
本文主要介紹了SpringBoot實(shí)現(xiàn)接口的各種參數(shù)校驗(yàn)的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
java?JUC信號(hào)量Semaphore原理及使用介紹
這篇文章主要為大家介紹了java?JUC信號(hào)量Semaphore原理及使用介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11
SpringBoot將Spring fox更換為Springdoc的方法詳解
由于項(xiàng)目中使用Spring fox已經(jīng)不維護(hù)更新了,代碼掃描,掃出問(wèn)題,需要將Spring fox更換為Spring Doc,所以本文給大家介紹了SpringBoot將Spring fox更換為Springdoc的方法,文中有相關(guān)的代碼供大家參考,需要的朋友可以參考下2024-01-01
淺談@RequestParam 參數(shù)是否必須傳的問(wèn)題
這篇文章主要介紹了淺談@RequestParam 參數(shù)是否必須傳的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02

