java8将两个list集合去重
时间: 2023-07-18 10:44:02 浏览: 97
可以使用Java 8的Stream API来将两个list集合去重,具体实现代码如下:
```java
List<String> list1 = Arrays.asList("A", "B", "C", "D");
List<String> list2 = Arrays.asList("C", "D", "E", "F");
List<String> distinctList = Stream.concat(list1.stream(), list2.stream())
.distinct()
.collect(Collectors.toList());
System.out.println(distinctList);
```
上述代码中,使用了Stream.concat()方法将两个list集合合并成一个流,然后使用distinct()方法去重,最后使用Collectors.toList()方法将结果收集到一个新的list集合中。
相关问题
java两个list集合去重合并
在Java中,将两个List集合去重并合并,可以采用多种方法。这里提供一种基于Set数据结构的方式:
```java
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
public List<String> mergeAndRemoveDuplicates(List<String> list1, List<String> list2) {
// 将两个列表转换为HashSet去除重复元素
HashSet<String> set = new HashSet<>(list1);
set.addAll(list2);
// 再将Set转换回ArrayList
List<String> result = new ArrayList<>(set);
return result;
}
```
这个方法首先创建一个HashSet,因为HashSet不允许有重复元素,所以它会自动去除列表中的重复项。然后将两个列表都添加到Set中,再将Set转换回ArrayList,得到的就是合并后的去重列表。
如果你想保留原列表的顺序,可以使用LinkedHashSet,因为它维护元素插入的顺序:
```java
List<String> merged = new ArrayList<>();
merged.addAll(list1); // 先添加list1保持原始顺序
merged.addAll(set); // 添加去重后的元素
return merged;
```
java 中两个list集合如何去重,去重完的数据存入一个新的list
你可以使用Java中的Set集合来实现两个List集合的去重。Set是一个不允许有重复元素的集合,可以利用这个特性来去除重复数据。以下是一个示例代码:
```java
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Main {
public static void main(String[] args) {
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
list1.add(3); // 重复元素
List<Integer> list2 = new ArrayList<>();
list
阅读全文