long list 用stream 剔除 long数组 相同的元素 返回list
时间: 2025-01-05 08:44:02 浏览: 5
在Java中,如果你有一个长整型 (`long`) 列表 (`List<Long>`) 并想使用Stream API剔除其中重复的元素,可以这样做:
```java
import java.util.*;
import java.util.stream.*;
List<Long> list = ... // 长整型列表,假设它已经包含了重复元素
// 使用流API过滤并去重
List<Long> uniqueList = list.stream()
.distinct() // 去除重复元素
.collect(Collectors.toList());
System.out.println(uniqueList); // 输出去重后的列表
```
上述代码首先创建了一个流 (`stream()`), 然后调用 `distinct()` 函数去除重复的元素,最后使用 `collect()` 方法将其转换回列表形式。
如果你的目标是处理原始数组而非列表,也可以类似地使用Java 8的 `Arrays.stream()` 和 `distinct()`:
```java
long[] array = ... // 长整型数组
// 转换为流并去重
List<Long> distinctList = Arrays.stream(array)
.boxed() // 将long转为Long以便用于stream
.distinct()
.collect(Collectors.toList());
```
这里使用了 `boxed()` 来将原始数组中的 `long` 类型转换为 `Long` 类型,以便于流的处理。
阅读全文