java 去除两个list中重复元素
时间: 2023-08-05 09:09:44 浏览: 125
可以使用Java 8中的Stream API来实现这个功能。具体步骤如下:
1. 将两个List合并成一个新的List
2. 使用stream()方法获取流对象
3. 使用distinct()方法去除重复元素
4. 使用collect()方法将流转换回List对象
示例代码如下:
```java
List<Integer> list1 = Arrays.asList(1, 2, 3);
List<Integer> list2 = Arrays.asList(2, 3, 4);
List<Integer> result = Stream.concat(list1.stream(), list2.stream())
.distinct()
.collect(Collectors.toList());
System.out.println(result);
```
输出结果为:[1, 2, 3, 4]
上述代码将两个List中的元素合并,然后去除重复元素,最后返回一个新的List对象。
相关问题
java 两个list去除重复元素
可以使用Java8中的Stream API来实现两个List去除重复元素的操作,具体代码如下:
```java
List<String> list1 = Arrays.asList("A", "B", "C", "D");
List<String> list2 = Arrays.asList("B", "C", "E", "F");
List<String> result = Stream.concat(list1.stream(), list2.stream())
.distinct()
.collect(Collectors.toList());
System.out.println(result);
```
输出结果为:`[A, B, C, D, E, F]`
这里使用了`Stream.concat`方法将两个List合并为一个Stream,再使用`distinct`方法去重,最后使用`collect`方法将结果收集为List。
java的lambda表达式实现两个list去掉重复元素
可以使用Java 8的Stream API和lambda表达式实现两个List去重。
假设我们有两个List,分别为list1和list2,我们可以使用以下代码去重:
```
List<String> list1 = Arrays.asList("a", "b", "c");
List<String> list2 = Arrays.asList("b", "c", "d");
List<String> distinctList = Stream.concat(list1.stream(), list2.stream())
.distinct()
.collect(Collectors.toList());
System.out.println(distinctList); // 输出 [a, b, c, d]
```
以上代码使用了Stream.concat方法将两个List合并成一个Stream,然后使用distinct方法去重,最后使用collect方法将结果收集到一个新的List中。
注意:这里默认List中的元素类型为String,如果你使用其他类型的元素需要相应地修改代码。
阅读全文