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博客

相关推荐
一只大袋鼠10 分钟前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
LuminousCPP42 分钟前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
web3.08889991 小时前
1688 图搜接口(item_search_img / 拍立淘) 接入方法
开发语言·python
德思特1 小时前
从 Dify 配置页理解 RAG 的重要参数
java·人工智能·llm·dify·rag
YOU OU1 小时前
Spring IoC&DI
java·数据库·spring
один but you2 小时前
从可变参数到 emplace:现代 C++ 性能优化的核心组合
java·开发语言
是码龙不是码农2 小时前
ThreadPoolExecutor 7 个核心参数详解
java·线程池·threadpool
这是程序猿2 小时前
Spring Boot自动配置详解
java·大数据·前端
MY_TEUCK3 小时前
【Java 后端 | Nacos 注册中心】微服务治理原理、选型与注册发现实战
java·开发语言·微服务
测试员周周3 小时前
【Appium 系列】第13节-混合测试执行器 — API + UI 的协同执行
开发语言·人工智能·python·功能测试·ui·appium·pytest