strem流取重复值拿到最新
时间: 2024-01-16 22:02:54 浏览: 110
如果您想要在一个流中取出最新的非重复值,您可以考虑使用Java 8中的Stream API中的distinct()和sorted()方法的组合。您可以先使用sorted()方法将流中的元素按照某种规则排序,然后再使用distinct()方法去除重复元素。由于distinct()方法会保留第一个出现的元素,因此您可以确保得到的是最新的非重复值。例如,对于一个包含时间戳的流,您可以这样实现:
```java
List<Long> timestamps = ...; // 获取时间戳流
List<Long> latestTimestamps = timestamps.stream()
.sorted(Comparator.reverseOrder()) // 按照时间戳倒序排序
.distinct() // 去除重复时间戳
.collect(Collectors.toList()); // 转为List
```
这样,您就可以得到一个按照时间戳倒序排列的最新的非重复时间戳列表。
阅读全文