java 如何将List<Object[]>转换成List<实体>?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 如何将List<Object[]>转换成List<实体>?相关的知识,希望对你有一定的参考价值。
顺便提下,List<Object[]>是执行方法返回的,方法类已经打包,而且不是同一个项目下。
或者说怎么取出List<Object[]>里面的数据?
1、首先创建一个类,如图所示。
2、创建一个主方法,如图所示main方法。
3、让我们声明一个List<Map>集合,如图所示。
4、接着我们声明一个Map集合,如图所示。
5、通过for循环来遍历List,如图。
6、我们在每一次循环中拿出list中相应的map。
参考技术A代码如下:
private <T> List<Object[]> getFieldValueByFieldName(List<T> list,String [] fieldArr)
List<Object[]> objArrList = new ArrayList<Object[]>();
Object[] objArr = null;
for(T t :list)
objArr = new Object[fieldArr.length];
for (int i = 0; i < fieldArr.length; i++)
try
Field field = t.getClass().getField(fieldArr[i]);
objArr[i] = field.get(t);
catch (Exception e)
e.printStackTrace();
objArrList.add(objArr);
return objArrList;
扩展资料
list中可以添加任何对象,例如:
class Person
上面定义了一个Person类,下面看好如何使用List
Person p1=new Person();
Person p2=new Person();
List list=new ArrayList();
list.add(p1);
list.add(p2);//这里是将对象加入到list中
for(int i=0;i
补充:Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
参考技术B 1,请问,你的Object[] 里面的值就是实体类么? 如果是就用下面的方法List<User> newList=new ArrayList<User>(); //实体类
List<Object[]> list=new ArrayList<Object[]>();
for(int i=0;i<list.size();i++)
Object[] objects=list.get(i);
if(objects.length>0)
for(int j=0;i<objects.length;j++)
newList.add((User)objects[j]); //强制转换
2.如果你Object[] 里面的值是实体类的属性,
那么也可以用上面的思路:
List<User> newList=new ArrayList<User>(); //实体类
List<Object[]> list=new ArrayList<Object[]>();
for(int i=0;i<list.size();i++)
Object[] objects=list.get(i);
if(objects.length>0)
for(int j=0;i<objects.length;j++)
User user=new User();
user.setId((Integer)objects[j]); //把值赋给属性,并强制转换
追问
首先,List list中本来就有值了的,干嘛还要new出一个来?new出一个新的那他的size不是为0的吗?其实,我用过类似你的这种方法,我是直接遍历List list再add到new出来的实体类中而已,不过,编译不通过.
追答你不是将List转换成List么?
new 一个用来装转换的值,
new 出来的size是为0啊,然后就给他转值啊!
你这种 应该用第二种方法, 没有通过,应该是赋值时属性类型不匹配,你在调下赋值属性时的转换
看到图片没?图片中的list里的数据就是
追答看 wujunlongsy回答的就挺好,应该是第二种方法
以上是关于java 如何将List<Object[]>转换成List<实体>?的主要内容,如果未能解决你的问题,请参考以下文章
如何将map<string list<>>转换成城map<string,object>
如何将两个List<Map<String,Object>>合并为一个
list<String>如何转化为Map<String, Object>,list<EmpVO>如何转化为Map<String, Object>