java把一个list里的数据转移到另外一个list

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java把一个list里的数据转移到另外一个list相关的知识,希望对你有一定的参考价值。

例如:List<A> a = new List<A>();
List<B> b = new List<B>();
A里有两个字段c1和c2,B里有也两个字段c1和c2,
我怎么把List<A>里的字段的值全转到List<B>里去?

java将一个list里的数据转移到另外一个list,可以使用for语句,一次使用add方法,示例如下:

 ArrayList list1=new ArrayList();
 list1.add("1");
 list1.add("2");
 list1.add("3");
ArrayList list2=new ArrayList();
list2.add("4");
for(int i=0;i<list1.size();i++)

  list2.add(list1.get(i));//开始复制一个list的内容到另外一个list

//这样就可以用list2添加list1的所有元素了!。想把他显示出来可以如下
for(int i=0;i<list2.size();i++)

   System.out.println(list2.get(i));

运行结果如下:

参考技术A 如果你i两个LIST的类型是不同类型(一个A一个B)是不能转懂啊一个list中的。 参考技术B JDK8对List的简化操作-Lambda表达式
b=a.stream().map(A ->new B(A.getC1(),A.getC2())).collect(Collectors.toList());
参考技术C b.addAll(a);

或者:
for(int i=0;i<a.size();i++)
b.add(a.get(i));
追问

这样会报错说类型不符合

追答

for(int i=0;i<a.size();i++)
b.add((B)a.get(i));

强制类型转换

本回答被提问者和网友采纳
参考技术D beanutils copy追问

这样太复杂了,字段少的话还行

java lsit集合数据替换问题

装有多个对象的list集合,怎么把所有对象里的属性里的数据替换了?
(比如 list集合中的对象的name属性的值为 “张1三” 结果是要“张1三”改成“张2三”只是把1替换成2)这因该怎么做?求大侠指点

参考技术A 如果是有规则的就容易,没有规则就恶心了!有规则的话就迭代这个list,拿到每个对象,然后给对象的name给替换到这个对象就行了 ,不过要把替换过的对象放到新的list中返回 参考技术B 找到name属性的值为“张1三”的坐标,进行替换 参考技术C 你是想把所有对象的属性都改成同一个值吗

以上是关于java把一个list里的数据转移到另外一个list的主要内容,如果未能解决你的问题,请参考以下文章

java 如何把一个list里的相同数的出现次数输出成另一个list

报表使用分组

怎么把spss里的两个表格数据挑出来

把一个list里的元素增加到另一个list中

把一个list里的元素增加到另一个list中

Java递归遍历集合