在此程式場景中,我們的目標是確定兩個清單之間共同元素的數量,同時辨識相似和不同的元素
要實現這一目標,可以利用Java 的集合框架,特別是ArrayList 或HashSet 類別。 ArrayList 中的 keepAll 方法僅保留兩個清單共享的項目,提供公共元素的計數(本例為三個)。
例如:
import java.util.ArrayList; import java.util.Arrays; public class CompareLists { public static void main(String[] args) { ArrayList<String> list1 = new ArrayList<>(Arrays.asList("milan", "dingo", "iga", "elpha", "hafil", "meat", "iga", "milan", "elpha", "meat", "iga")); ArrayList<String> list2 = new ArrayList<>(Arrays.asList("hafil", "iga", "binga", "mike", "dingo", "dingo", "dingo")); list1.retainAll(list2); System.out.println(list1); } }
或者,對第二個列表使用HashSet 可以進行更有效的比較:
import java.util.HashSet; import java.util.Arrays; public class CompareLists { public static void main(String[] args) { ArrayList<String> list1 = new ArrayList<>(Arrays.asList("milan", "dingo", "iga", "elpha", "hafil", "meat", "iga", "milan", "elpha", "meat", "iga")); HashSet<String> list2 = new HashSet<>(Arrays.asList("hafil", "iga", "binga", "mike", "dingo", "dingo", "dingo")); Set<String> common = new HashSet<>(list1); common.retainAll(list2); Set<String> unique = new HashSet<>(list1); unique.addAll(list2); unique.removeAll(common); System.out.println("Common: " + common); System.out.println("Distinct: " + unique); } }
此版本識別常見值和不同值,處理重複值有效。
以上是如何在 Java 中有效率地尋找兩個清單之間的共同元素和不同元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!