取多个集合的交集

1.我们取多个集合的交集,先把各个集合放入list中

java 复制代码
        List < Set < String > > list=new ArrayList<>();
        HashSet<String> set1=new HashSet<>();
        set1.add( "A" );
        set1.add("B" );
        set1.add("C"  );
        HashSet<String> set2=new HashSet<>();
        set2.add( "D" );
        set2.add("B" );
        set2.add( "A" );
        HashSet<String> set3=new HashSet<>();
        set3.add("A" );
        set3.add( "E"  );
        set3.add("B"  );
        list.add(set1);
        list.add(set2);
        list.add(set3);
        Set<String> intersection = list.stream().skip(1)
                .collect(()->new HashSet<>(list.get(0)), Set::retainAll, Set::retainAll);
        System.out.println(intersection);
    }
相关推荐
逍遥德6 分钟前
java Map Set List 扩容机制
java·开发语言·list
高山上有一只小老虎11 分钟前
mybatisplus实现分页查询
java·spring boot·mybatis
nbsaas-boot12 分钟前
基于 Java 21 ScopedValue 的多租户动态数据源完整实践
java·开发语言
2301_7806698613 分钟前
线程安全、线程同步(三种加锁方式)、线程池(两种创建线程池方式、线程池处理Runnable任务、线程池处理Callable任务)、并发/并行
java
liuc031718 分钟前
Java项目关于不同key的读取
java·开发语言
yaoxin52112321 分钟前
296. Java Stream API - 二元操作符与“单位元“
java·服务器·windows
罗伯特_十三38 分钟前
Spring AI ChatModel 使用记录
java·人工智能·spring
毕设源码-朱学姐40 分钟前
【开题答辩全过程】以 基于SpringBoot的律师事务所管理系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
菜宾1 小时前
java-seata基础教学
java·开发语言·adb
毕设源码-朱学姐1 小时前
【开题答辩全过程】以 基于springboot的日用药品仓库管理系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端