在 Java 中,可以使用 ListretainAllremoveAll 方法来获取两个 List 中的差异部分。

假设有两个 List,分别为 list1list2,要获取 list1 中与 list2 不同的元素,可以按照以下步骤操作:

  1. 创建一个新的 List 用于存放差异部分,例如 List<T> diffList = new ArrayList<>(),其中 T 是元素的数据类型。
  2. 使用 retainAll 方法,将 list1 中与 list2 相同的元素保留下来,即 list1.retainAll(list2)
  3. 使用 removeAll 方法,将 list1 中与 list2 相同的元素移除,即 list1.removeAll(list2)
  4. list1 中剩余的元素添加到 diffList 中,即 diffList.addAll(list1)

下面是一个示例代码:

import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<String> list1 = new ArrayList<>();
        list1.add('A');
        list1.add('B');
        list1.add('C');
        
        List<String> list2 = new ArrayList<>();
        list2.add('B');
        list2.add('C');
        list2.add('D');
        
        List<String> diffList = new ArrayList<>();
        
        // 获取list1中与list2不同的元素
        diffList.addAll(list1);
        diffList.removeAll(list2);
        
        System.out.println('差异部分:' + diffList); // 输出:差异部分:[A]
    }
}

在上述示例中,diffList 中存放的就是 list1 中与 list2 不同的元素,即 [A]

Java 获取两个 List 中的差异部分:retainAll 和 removeAll 方法

原文地址: https://www.cveoy.top/t/topic/qkPR 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录