Java获取List实体交集差集

实体交集差集

java 复制代码
List<OcApplySquareVo> jiaoList = list.stream()
				.filter(item ->//此处加!得到差集,不加得到交集
						!list2.stream().map(OcApplySquareVo::getApplySubName)
								.collect(Collectors.toList())
								.contains(item.getApplySubName())
				).collect(Collectors.toList());

获取两个List集合之间的交集、并集、差集、补集

java 复制代码
@Test
public void intersection() {
    List<Integer> intersection = Lists.newArrayList();
    for (Integer e1 : list1) {
        for (Integer e2 : list2) {
            if (e1.equals(e2)) {
                intersection.add(e1);
            }
        }
    }
    System.out.println("intersection <手动遍历> 交集结果是: " + intersection);

    intersection = list1.stream()
            .filter(list2::contains)
            .collect(Collectors.toList());
    System.out.println("intersection <Stream流> 交集结果是: " + intersection);

    list1.retainAll(list2);
    System.out.println("intersection <retainAll> 方法 交集结果是: " + list1);

    Collection collection = CollectionUtils.intersection(list1, list2);
    System.out.println("intersection <CollectionUtils.intersection> 方法 交集结果是:" + collection);
}

资料:

获取两个List集合之间的交集、并集、差集、补集_两个list取交集-CSDN博客

相关推荐
jjjxxxhhh1235 小时前
RSA加密解密代码
开发语言·c++
重生之后端学习5 小时前
236. 二叉树的最近公共祖先
java·数据结构·算法·职场和发展·深度优先
Sun_gentle5 小时前
java.lang.RuntimeException: Could not load wrapper properties from ‘C:\Users\
java·开发语言·安卓
笨蛋不要掉眼泪5 小时前
Nacos配置中心详解:核心用法、动态刷新与经典面试题解析
java·数据库·后端
键盘鼓手苏苏5 小时前
Flutter for OpenHarmony:git 纯 Dart 实现的 Git 操作库(在应用内实现版本控制) 深度解析与鸿蒙适配指南
开发语言·git·flutter·华为·rust·自动化·harmonyos
橙露5 小时前
面向对象编程思想:Java 与 Python 的封装、继承与多态对比分析
java·开发语言·python
上海合宙LuatOS6 小时前
LuatOS核心库API——【io】 io操作(扩展)
java·服务器·前端·网络·单片机·嵌入式硬件·物联网
ShineWinsu6 小时前
对于C++:模版进阶的解析
开发语言·c++·面试·笔试·求职·进阶·模版
追随者永远是胜利者6 小时前
(LeetCode-Hot100)42. 接雨水
java·算法·leetcode·职场和发展·go
lifallen6 小时前
点分治 (Centroid Decomposition)
java·数据结构·算法