zoukankan      html  css  js  c++  java
  • lambda新特性,对两组集合中相同的数据去重

    集合一:
    List<ReplaceGoods> replaceGoodsList1=new ArrayList<>();
    ReplaceGoods ReplaceGood1=new ReplaceGoods();
    ReplaceGood1.setGoodsId(Long.valueOf(1111));
    replaceGoodsList1.add(ReplaceGood1);
    ReplaceGoods ReplaceGood2=new ReplaceGoods();
    ReplaceGood2.setGoodsId(Long.valueOf(2222));
    replaceGoodsList1.add(ReplaceGood2);



    集合二:
    List<ReplaceGoods> replaceGoodsList2=new ArrayList<>();
    ReplaceGoods ReplaceGood3=new ReplaceGoods();
    ReplaceGood3.setGoodsId(Long.valueOf(1111));
    replaceGoodsList2.add(ReplaceGood3);
    ReplaceGoods ReplaceGood4=new ReplaceGoods();
    ReplaceGood4.setGoodsId(Long.valueOf(3333));
    replaceGoodsList2.add(ReplaceGood4);



    //List去重 方法一
    for (ReplaceGoods aa:replaceGoodsList1) {
    replaceGoodsList2 = replaceGoodsList2.stream().distinct().collect(collectingAndThen(
    toCollection(() -> new TreeSet<>(Comparator.comparing(x->x.getGoodsId().equals(aa.getGoodsId())))), ArrayList::new));
    }
    System. out.print("去重后:");
    System. out.println(replaceGoodsList2);

    //List去重 方法二
    for (ReplaceGoods aa:replaceGoodsList1) {
    replaceGoodsList2.stream().forEach(s->{
    if(s.getGoodsId().equals(aa.getGoodsId()))
    replaceGoodsList1.remove(aa);
    });
    }
    System. out.print("去重后:");
    System. out.println(replaceGoodsList1);
  • 相关阅读:
    GIS Tools for Hadoop 详细介绍
    凤凰涅槃,浴火重生(2013年总结)
    13年我们依然在路上
    HDU 4022 Bombing (map + multiset)
    ArcGIS 10.2 操作SQLite
    hdu1690 Bus System (dijkstra)
    HDU 4704 Sum
    Dark Side of Cloud Storage —— 数据对像的分块消重
    gdb x查看二进制
    信号 signal sigaction补充
  • 原文地址:https://www.cnblogs.com/gemiaomiao/p/12119457.html
Copyright © 2011-2022 走看看