Java中List之間求交集的思路及代碼示例
問題
在Java中需要保留已有List中在另外一個List中的數(shù)據(jù)。
解決思路
使用list類自帶的retainAll方法來求交集。
retainAll 是 Java 集合框架(Collection 接口)中定義的一個方法,用于僅保留當前集合中與另一個集合共有的元素(即求交集),并移除所有不在指定集合中的元素。
java
import java.util.*;
public class RetainAllExample {
public static void main(String[] args) {
// 示例1:ArrayList 與 HashSet 求交集
List<String> list = new ArrayList<>(Arrays.asList("A", "B", "C", "D"));
Set<String> set = new HashSet<>(Arrays.asList("B", "D", "E"));
boolean changed = list.retainAll(set);
System.out.println("是否改變:" + changed); // true
System.out.println("list 交集結(jié)果:" + list); // [B, D]
// 示例2:沒有共同元素
List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3));
List<Integer> others = Arrays.asList(4, 5, 6);
boolean changed2 = numbers.retainAll(others);
System.out.println("是否改變:" + changed2); // true
System.out.println("numbers 結(jié)果:" + numbers); // [](空集合)
// 示例3:沒有元素被移除
List<String> colors = new ArrayList<>(Arrays.asList("紅", "綠"));
List<String> keep = Arrays.asList("紅", "綠", "藍");
boolean changed3 = colors.retainAll(keep);
System.out.println("是否改變:" + changed3); // false
System.out.println("colors 結(jié)果:" + colors); // [紅, 綠](未變)
}
}
總結(jié)
到此這篇關(guān)于Java中List之間求交集的思路及代碼示例的文章就介紹到這了,更多相關(guān)Java List之間求交集內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot實現(xiàn)動態(tài)加載外部Jar流程詳解
這篇文章主要介紹了SpringBoot動態(tài)加載外部Jar的流程,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習吧2023-05-05
SpringBoot實現(xiàn)全局異常的封裝和統(tǒng)一處理
在Spring Boot應(yīng)用中,全局異常的處理是一個非常重要的方面,本文主要為大家詳細介紹了如何在Spring Boot中進行全局異常的封裝和統(tǒng)一處理,需要的可以參考下2023-12-12
解決Hibernate4執(zhí)行save()或update()無效問題的方法
這篇文章主要為大家詳細介紹了解決Hibernate4執(zhí)行save()或update()無效問題的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-06-06
Mybatis開發(fā)環(huán)境搭建實現(xiàn)數(shù)據(jù)的增刪改查功能
這篇文章主要介紹了 Mybatis開發(fā)環(huán)境搭建實現(xiàn)數(shù)據(jù)的增刪改查功能,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-03-03
關(guān)于在使用Lombok時maven?install找不到符號問題的解決辦法
Maven環(huán)境下開發(fā)項目時,尤其是涉及Lombok或其他依賴時,IDE會在構(gòu)建和編譯過程中進行注解處理,這篇文章主要介紹了關(guān)于在使用Lombok時maven?install找不到符號問題的解決辦法,需要的朋友可以參考下2025-10-10

