可以使用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中。