Java8 对List<Date>去重
时间: 2024-09-20 15:08:52 浏览: 38
java代码-使用java解决list(Map)排序的问题源代码
在Java 8中,对`List<Date>`类型的元素去重可以使用流(Stream) API。如果你想要基于日期的自然顺序保留唯一的日期,可以这样做:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class UniqueDates {
public static void main(String[] args) {
List<Date> dates = ... // 这里是你需要去重的Date列表
// 使用Stream API过滤并收集唯一日期
List<Date> uniqueDates = dates.stream()
.distinct() // 去除重复
.collect(Collectors.toList());
System.out.println(uniqueDates);
}
}
```
这里`distinct()`方法会去除所有重复的元素,然后`collect(Collectors.toList())`将结果转换回列表。
如果你想基于其他自定义规则去重,例如基于某个日期字段的比较,你可以提供一个Comparator作为`distinct()`方法的参数。
阅读全文