欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java獲取兩個List集合的交集代碼示例

 更新時間:2023年11月20日 08:39:21   作者:一個小浪吳啊  
這篇文章主要給大家介紹了關(guān)于java獲取兩個List集合交集的相關(guān)資料,我們可以使用Stream操作來對集合進行一系列的操作,其中包括求交集,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

獲取兩個List集合的交集

可以使用Java中的retainAll方法來獲取兩個List的交集:

假設(shè)有兩個List類型的集合list1和list2,代碼如下:

List<String> list1 = new ArrayList<>();
list1.add("apple");
list1.add("banana");
list1.add("orange");

List<String> list2 = new ArrayList<>();
list2.add("banana");
list2.add("orange");
list2.add("watermelon");

下面是獲取兩個集合的交集的代碼:

List<String> intersection = new ArrayList<>(list1);
intersection.retainAll(list2);
System.out.println(intersection);

輸出結(jié)果為:

[banana, orange]

其中,retainAll方法會修改intersection集合,使其只包含兩個集合的交集。在這個例子中,intersection集合最初是包含list1集合的元素的,然后通過retainAll方法過濾掉不屬于list2集合的元素,最終得到兩個集合的交集。

附:java中兩個list對象取交集、差集

在一般操作中,對于list集合取交集、差集、并集,比較簡單,網(wǎng)上有很多例子,如:

今天我們來說一下對于兩個list集合該如何取交集與并集:

如下兩個集合:groupEntityList、saveEntities,groupEntityList是組織集合,saveEntities是組織用戶集合,即saveEntities包含groupEntityList中的數(shù)據(jù)。

交集:

private List<SysOrgUserRefModel> colationOrgUserData(List<SysOrgUserRefModel> saveEntities,List<WFGroupEntity> groupEntityList){
        // 拿出組織集合中的組織id集合
        List<String> groupList = groupEntityList.stream().map(WFGroupEntity::getId).collect(Collectors.toList());
        // 根據(jù)組織用戶中的組織id與組織id集合比對,取相同的數(shù)據(jù)
        saveEntities = saveEntities.stream().filter(entity -> groupList.contains(CandidateDTO.newPostStr(entity.getOrgId()))).collect(Collectors.toList());
        return saveEntities;
    }

差集:saveEntities - groupEntityList

private List<SysOrgUserRefModel> colationOrgUserData(List<SysOrgUserRefModel> saveEntities,List<WFGroupEntity> groupEntityList){
        // 拿出組織集合中的組織id集合
        List<String> groupList = groupEntityList.stream().map(WFGroupEntity::getId).collect(Collectors.toList());
        // 根據(jù)組織用戶中的組織id與組織id集合比對,取相同的數(shù)據(jù)
        saveEntities = saveEntities.stream().filter(entity -> !groupList.contains(CandidateDTO.newPostStr(entity.getOrgId()))).collect(Collectors.toList());
        return saveEntities;
    }

表達式中誰在前,誰就是減數(shù)。

總結(jié)

到此這篇關(guān)于java獲取兩個List集合的交集的文章就介紹到這了,更多相關(guān)java獲取List集合交集內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringMVC工作原理實例詳解

    SpringMVC工作原理實例詳解

    這篇文章主要介紹了SpringMVC工作原理實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • SpringBoot yaml語法與數(shù)據(jù)讀取操作詳解

    SpringBoot yaml語法與數(shù)據(jù)讀取操作詳解

    YAML 是 “YAML Ain’t Markup Language”(YAML 不是一種標記語言)的遞歸縮寫。在開發(fā)的這種語言時,YAML 的意思其實是:“Yet Another Markup Language”(仍是一種標記語言),本文給大家介紹的非常詳細,需要的朋友可以參考下
    2022-07-07
  • 關(guān)于mybatis調(diào)用存儲過程獲取返回值問題

    關(guān)于mybatis調(diào)用存儲過程獲取返回值問題

    這篇文章主要介紹了mybatis調(diào)用存儲過程獲取返回值問題,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • 聊聊Spring MVC JSON數(shù)據(jù)交互的問題

    聊聊Spring MVC JSON數(shù)據(jù)交互的問題

    我們在開發(fā)中后端經(jīng)常需要接受來自于前端傳遞的Json字符串數(shù)據(jù),怎么把Json字符串轉(zhuǎn)換為Java對象呢?下面小編給大家?guī)砹薙pring MVC JSON數(shù)據(jù)交互的問題,感興趣的朋友一起看看吧
    2021-10-10
  • MyBatisPlus使用${ew.customSqlSegment}別名問題解決

    MyBatisPlus使用${ew.customSqlSegment}別名問題解決

    在使用MyBatisPlus進行連表查詢時,可能遇到因${ew.customSqlSegment}無法加別名的問題,本文就來介紹一下如何解決,感興趣的可以了解一下
    2024-10-10
  • 分析講解SpringMVC注解配置如何實現(xiàn)

    分析講解SpringMVC注解配置如何實現(xiàn)

    這篇文章主要介紹了本文要介紹用注解方式代替web.xml與SpringMVC的配置文件,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Java 添加文本框到PPT幻燈片過程解析

    Java 添加文本框到PPT幻燈片過程解析

    這篇文章主要介紹了Java 添加文本框到PPT幻燈片過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • springboot本地調(diào)試沒問題,打包運行報錯原因及分析

    springboot本地調(diào)試沒問題,打包運行報錯原因及分析

    這篇文章主要介紹了springboot本地調(diào)試沒問題,打包運行報錯原因及分析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Spring操作JdbcTemplate數(shù)據(jù)庫的方法學(xué)習(xí)

    Spring操作JdbcTemplate數(shù)據(jù)庫的方法學(xué)習(xí)

    這篇文章主要為大家介紹了Spring操作JdbcTemplate數(shù)據(jù)庫方法學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • 詳解Spring MVC攔截器實現(xiàn)session控制

    詳解Spring MVC攔截器實現(xiàn)session控制

    這篇文章主要介紹了詳解Spring MVC攔截器實現(xiàn)session控制,使用session監(jiān)聽,重復(fù)登錄后,強制之前登錄的session過期。有興趣的可以了解一下。
    2017-01-01

最新評論