Java两个List取并集的实现方法

引言

在Java开发中,经常会遇到需要对两个List集合进行合并的情况。合并两个List,即取两个List的并集,即把两个List中的所有元素合并到一个新的List中,并去除重复元素。本文将介绍如何使用Java实现这一功能。

实现步骤

为了更好地理解整个过程,我将使用表格展示每个步骤所需的操作和代码。

步骤 操作 代码示例
第一步 创建两个List集合并添加元素 List<String> list1 = new ArrayList<>();<br>List<String> list2 = new ArrayList<>();
第二步 将两个List合并到一个新的List中 List<String> mergedList = new ArrayList<>();
第三步 遍历第一个List,将元素添加到新的List中 for (String element : list1) {<br>  mergedList.add(element);<br>}
第四步 遍历第二个List,将元素添加到新的List中 for (String element : list2) {<br>  mergedList.add(element);<br>}
第五步 使用Java 8的Stream API去除新的List中的重复元素 mergedList = mergedList.stream().distinct().collect(Collectors.toList());

下面将详细讲解每个步骤的具体操作和代码。

步骤详解

第一步:创建两个List集合并添加元素

首先,我们需要创建两个List集合,并向其中添加一些元素。以下是创建和添加元素的代码示例:

List<String> list1 = new ArrayList<>();
list1.add("Apple");
list1.add("Banana");
list1.add("Orange");

List<String> list2 = new ArrayList<>();
list2.add("Orange");
list2.add("Grape");
list2.add("Watermelon");

在上述示例中,我们创建了两个List集合list1list2,并向其添加了一些元素。

第二步:将两个List合并到一个新的List中

接下来,我们需要创建一个新的List集合,并将两个List的元素合并到其中。以下是合并List的代码示例:

List<String> mergedList = new ArrayList<>();

在上述示例中,我们创建了一个新的List集合mergedList用于存储合并后的元素。

第三步:遍历第一个List,将元素添加到新的List中

我们需要遍历第一个List,并将其中的元素逐个添加到新的List中。以下是遍历和添加元素的代码示例:

for (String element : list1) {
    mergedList.add(element);
}

在上述示例中,我们使用了增强的for循环,遍历了list1中的所有元素,并将其逐个添加到mergedList中。

第四步:遍历第二个List,将元素添加到新的List中

接下来,我们需要遍历第二个List,并将其中的元素逐个添加到新的List中。以下是遍历和添加元素的代码示例:

for (String element : list2) {
    mergedList.add(element);
}

在上述示例中,我们使用了增强的for循环,遍历了list2中的所有元素,并将其逐个添加到mergedList中。

第五步:使用Java 8的Stream API去除新的List中的重复元素

最后,我们使用Java 8的Stream API对合并后的List进行去重操作,即去除其中的重复元素。以下是使用Stream API去重的代码示例:

mergedList = mergedList.stream().distinct().collect(Collectors.toList());

在上述示例中,我们使用了stream()方法将List转换为Stream对象,然后使用distinct()方法去除重复元素,最后使用collect()方法将Stream转换回List。

完整代码示例

下面是完整的代码示例,包括上述所有步骤的代码:

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;