使用java8新特性实现:list中有实体,每个实体都有一个Date型的日期,按照日期给list排序
时间: 2024-09-27 13:08:30 浏览: 36
Java软件开发实战 Java基础与案例开发详解 14-8 练习题 共6页.pdf
在Java 8中,可以利用Stream API和Comparator接口轻松地对List中的实体对象按日期进行排序。首先,假设我们有一个名为`Entity`的类,它有一个`LocalDate`类型的字段`date`:
```java
import java.time.LocalDate;
import java.util.Comparator;
import java.util.List;
public class Entity {
private LocalDate date;
// 其他属性...
// 构造函数、getter和setter省略
}
List<Entity> entities = ...; // 你的实体列表
// 使用Java 8 Stream API 和 Comparator排序
entities.sort(Comparator.comparing(Entity::getDate));
```
这里,`comparing()`方法接收一个Lambda表达式,它定义了如何从`Entity`实例提取用于排序的日期值。然后,`sort()`方法会根据这个规则对列表进行排序。
如果你想按照日期降序排列,只需稍微修改一下Comparator:
```java
entities.sort(Comparator.comparing(Entity::getDate).reversed());
```
阅读全文