確定多個清單中的公共元素
在Java 中,您可能會遇到需要查找多個清單共享的公共元素的情況。對於比較資料集或識別交叉點等任務,這可能是有用的操作。本文探討了一種使用 Java 集合框架檢索兩個清單之間的公共元素的有效方法。
首先,考慮這樣的場景:您有兩個 ArrayList 對象,每個物件包含三個整數。您的目標是尋找並傳回兩個清單中都存在的元素。
解決方案:Collection#retainAll()
實現此目標的最簡單方法之一是透過使用 Collection#retainAll() 方法。此方法透過刪除指定集合參數中不存在的所有元素來修改呼叫集合。
listA.retainAll(listB);
執行上述程式碼後,listA 將只包含listA 和listB 共有的元素.
替代方法:建立新集合
如果您需要保留listA的原始內容,您可以創建一個包含公共元素的新集合:
List<integer> common = new ArrayList(listA); common.retainAll(listB);</integer>
這種情況下,公共列表將僅包含listA 和listB 中都存在的元素,而原始列表listA 的內容保持不變。
基於流的解決方案
Java 8 引入了強大的流 API它提供了一種處理和操作集合的聲明性方式。您可以利用stream#filter()方法根據特定謂詞過濾元素:
List<integer> common = listA.stream().filter(listB::contains).toList();</integer>
這種基於流的方法對listA中的每個元素執行過濾操作,檢查它是否存在於listB中contains( ) 方法。產生的清單將僅包含 listA 和 listB 之間的公共元素。
以上是Java中如何有效率地找出多個清單之間的共同元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

WebStorm Mac版
好用的JavaScript開發工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。