java中两个list集合取并集、交集和差集&对list数据进行筛选
java中两个list集合取并集、交集和差集
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | List<String> list1 = new ArrayList<>(); List<String> list2 = new ArrayList<>(); list1.add( "A" ); list1.add( "C" ); list1.add( "D" ); list2.add( "A" ); list2.add( "B" ); //获取两个集合并集 List<String> strings = new ArrayList<>(CollectionUtils.union(list1, list2)); System.out.println(strings); //[A, B, C, D] //获取两个集合交集 List<String> strings1 = new ArrayList<>(CollectionUtils.intersection(list1, list2)); System.out.println(strings1); //[A] //获取两个集合交集的补集 List<String> strings12 = new ArrayList<>(CollectionUtils.subtract(list1, list2)); System.out.println(strings12); //[C, D] //获取两个集合差集的补集 List<String> strings2 = new ArrayList<>(CollectionUtils.disjunction(list1, list2)); System.out.println(strings2); //[B, C, D] |
对list数据进行筛选
1 2 3 4 5 6 7 8 9 10 | //对相同内容的list进行去重 List<AppleNode> disList = appleList.stream().distinct().collect(Collectors.toList()); //取出name和code和apleNewList中的数据一致的内容 List<Apple> filterAppleList = appleNewList.stream().filter(apple-> name.equals(apple.getName()). filter(apple -> code.equals(apple.getCode())).collect(Collectors.toList()); //根据list中的内容取出最大值对应的实体 Apple filterHs = filterHistoryList.stream().max(Comparator.comparing(Apple:getNumbet).get(); |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结