可以使用Java 8的Stream API来实现两个List的交集。
假设有两个List
import java.util.ArrayList;
import java.util.List;
public class IntersectionExample {
public static void main(String[] args) {
List<Integer> list1 = new ArrayList<>(List.of(1, 2, 3, 4, 5));
List<Integer> list2 = new ArrayList<>(List.of(4, 5, 6, 7, 8));
List<Integer> intersect = list1.stream()
.filter(list2::contains)
.toList();
System.out.println(intersect); // 输出 [4, 5]
}
}
在上面的代码中,我们使用Stream的filter方法来过滤list1中的元素,只保留那些也在list2中的元素。最后,使用toList方法将结果收集到一个新的List中。