java List<Object[]>转Class<T> clz对象
2022/1/4 17:37:12
本文主要是介绍java List<Object[]>转Class<T> clz对象,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package com.xny.base.util; import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.List; /** * @author wuqs * @version 1.0.0 * @ClassName ObjectToBeanUtils.java * @Description List<Object[]>转换成一个List<T> * @createTime 2021年11月29日 16:25:00 */ public class ObjectToBeanUtils { /** * 把List<Object[]>转换成List<T> */ public static <T> List<T> objectToBean(List<Object[]> objList, Class<T> clz) throws Exception{ if (objList==null || objList.size()==0) { return null; } Class<?>[] cz = null; Constructor<?>[] cons = clz.getConstructors(); for (Constructor<?> ct : cons) { Class<?>[] clazz = ct.getParameterTypes(); if (objList.get(0).length == clazz.length) { cz = clazz; break; } } List<T> list = new ArrayList<T>(); for (Object[] obj : objList) { Constructor<T> cr = clz.getConstructor(cz); Object[] v = new Object[obj.length]; for(int i=0;i<obj.length;i++){ if(i == 0){ v[i] = obj[i]; }else{ v[i] = Double.valueOf(obj[i].toString()); } } list.add(cr.newInstance(v)); } return list; } public static <T> List<T> objectToBeanTwo(List<Object[]> objList, Class<T> clz) throws Exception{ if (objList==null || objList.size()==0) { return null; } Class<?>[] cz = null; Constructor<?>[] cons = clz.getConstructors(); for (Constructor<?> ct : cons) { Class<?>[] clazz = ct.getParameterTypes(); if (objList.get(0).length == clazz.length) { cz = clazz; break; } } List<T> list = new ArrayList<T>(); for (Object[] obj : objList) { Constructor<T> cr = clz.getConstructor(cz); Object[] v = new Object[obj.length]; for(int i=0;i<obj.length;i++){ if(null == obj[i]){ v[i] = ""; }else{ v[i] = obj[i].toString(); } } list.add(cr.newInstance(v)); } return list; } } 代码示例: List<CdqUpEntityVo> list = ObjectToBeanUtils.objectToBean(objects, CdqUpEntityVo.class);
这篇关于java List<Object[]>转Class<T> clz对象的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-20测试人员都是画画大神,让我看看谁还不会用代码图?
- 2024-05-20年薪百万的程序员都在用的摸鱼方式……
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了