繁体   English   中英

将指定对象从一个ArrayList复制到另一个ArrayList

[英]Copying specified objects from one ArrayList to another

我目前有一个ArrayList,其中包含“Product”对象,每个对象中包含一个字符串,整数和双精度。 我希望能够使用参数搜索对象,挑选与搜索参数匹配的ID(整数值)并将此对象复制到另一个ArrayList中。 是否可以通过迭代器执行此操作,还是有更简单的方法执行此操作?

简单的方法是使用Java 8流:

List<Product> filtered = 
   prods.stream().filter(p -> p.getId() == targetId).collect(toList());

假设import static java.util.stream.Collectors.toList;

简单直截了当的Java解决方案#8版本:

ArrayList<Product> arrOriginal = new ArrayList<Product>(); //with values of yours

ArrayList<Product> arrCopy = new ArrayList<Product>(); //empty

for (Product item : arrOriginal){
    if (<some condition>){
        arrCopy.add(item);
    }

}
ArrayList<Product> arrListOriginal = new ArrayList<Product>();
arrListOriginal.add(item1);
arrListOriginal.add(item2);
arrListOriginal.add(item3);

ArrayList<Product> arrListCopy = new ArrayList<Product>();
Product objProduct = new Product();
for (int index=0;index<arrListOriginal.size();index++){
    objProduct = (Product) arrListOriginal.get(index);
    if (<search condition with objProduct>){
        arrListCopy.add(objProduct);
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM