java 集合取交集

1.使用retainAll()方法:

List<Integer> list1 = new ArrayList<>(Arrays.asList(1, 2, 3));

List<Integer> list2 = new ArrayList<>(Arrays.asList(2, 3, 4));

list1.retainAll(list2);

System.out.println(list1); // 输出 [2, 3]

Set<Integer> set1 = new HashSet<>(Arrays.asList(1, 2, 3));

Set<Integer> set2 = new HashSet<>(Arrays.asList(2, 3, 4));

set1.retainAll(set2);

System.out.println(set1); // 输出 [2, 3]

2.使用Java 8的stream的filter方法和collect方法:

List<Integer> list1 = new ArrayList<>(Arrays.asList(1, 2, 3));
List<Integer> list2 = new ArrayList<>(Arrays.asList(2, 3, 4));
List<Integer> intersection = list1.stream().filter(e -> list2.contains(e)).collect(Collectors.toList());
System.out.println(intersection); // 输出 [2, 3]

相关推荐
爱吃苹果的日记本18 小时前
开学第一课
java
渣哥19 小时前
Java 集合框架详解:常见集合类及分类方式
java
yinke小琪19 小时前
消息队列如何保证消息顺序性?从原理到代码手把手教你
java·后端·面试
土了个豆子的19 小时前
03.缓存池
开发语言·前端·缓存·visualstudio·c#
考虑考虑19 小时前
Java实现墨水屏点阵图
java·后端·java ee
_extraordinary_19 小时前
Java 多线程(一)
java·开发语言
网安Ruler19 小时前
第49天:Web开发-JavaEE应用&SpringBoot栈&模版注入&Thymeleaf&Freemarker&Velocity
java·spring boot·后端
爱喝水的鱼丶19 小时前
SAP-ABAP: ABAP ASSIGN COMPONENT 语句详解:动态字段符号的利器作用用法示例详解
运维·开发语言·sap·abap·开发经验·动态字段符号
励志不掉头发的内向程序员20 小时前
C++进阶——多态
开发语言·c++·学习
奔跑吧邓邓子20 小时前
【Java实战㉟】Spring Boot与MyBatis:数据库交互的进阶之旅
java·spring boot·实战·mybatis·数据库交互