zoukankan      html  css  js  c++  java
  • java8 list去重 list转map 两个list取并集

    今天码程序想给一个list去个重,脑子里闪过用set过滤下,或者用list.contains()判断循环下,最后我用的是java8,哈哈哈!

    很骄傲,可以说是很喜欢了

    resultList.stream().distinct().collect(Collectors.toList());

    好久之后看到这,也还是挺惊喜的,当时这个居然都要写这里, list转map,
    Function.identity()是代表本身的意思
    List<TaskDto> csvTaskDtos = new ArrayList<>();
    Map<String, TaskDto> csvTaskDtoMap = csvTaskDtos.stream().collect(Collectors.toMap(TaskDto::getThemeJstId, Function.identity()));

    两个list取并集 各自单独的独有属性

       Set<String> systemTaskDtoMapKey = systemTaskDtoMap.keySet();
       Set<String> csvTaskDtoMapKey = csvTaskDtoMap.keySet();
       Set<String> includeBothKey =
                    systemTaskDtoMapKey.stream().filter(k -> csvTaskDtoMapKey.contains(k)).collect(Collectors.toSet());
       Set<String> includeSystemKey =
                    systemTaskDtoMapKey.stream().filter(k -> !csvTaskDtoMapKey.contains(k)).collect(Collectors.toSet());
       Set<String> includeCsvKey =
                    csvTaskDtoMapKey.stream().filter(k -> !systemTaskDtoMapKey.contains(k)).collect(Collectors.toSet());


  • 相关阅读:
    【背包问题】
    【CodeVS1037】取数游戏
    【CodeVS2226】飞行棋
    网线主管
    第一周计划
    毕业设计每日总结2020/2/16
    毕业设计每日总结2020/2/15
    毕业设计每日总结2020/2/14
    毕业设计每日总结2020/2/13
    毕业设计每日总结2020/2/12
  • 原文地址:https://www.cnblogs.com/CuiHongYu/p/10114939.html
Copyright © 2011-2022 走看看