java8 根据时间字段降序
使用Java 8的Stream API可以很方便地对时间字段进行降序排序。假设有一个包含时间字段的对象列表,可以按照以下步骤进行排序:
- 导入必要的类和接口:
import java.time.LocalDateTime;
import java.util.Comparator;
import java.util.List;
- 定义一个包含时间字段的对象类,假设为
MyObject:
class MyObject {
private LocalDateTime timeField;
// 其他属性和方法...
}
- 创建一个包含时间字段的对象列表:
List<MyObject> objects = Arrays.asList(
new MyObject(LocalDateTime.of(2022, 1, 1, 12, 0, 0)),
new MyObject(LocalDateTime.of(2021, 10, 1, 10, 0, 0)),
new MyObject(LocalDateTime.of(2021, 12, 1, 15, 0, 0))
);
- 使用Stream API对对象列表进行降序排序:
List<MyObject> sortedObjects = objects.stream()
.sorted(Comparator.comparing(MyObject::getTimeField).reversed())
.collect(Collectors.toList());
在上述代码中,sorted方法接受一个Comparator对象作为参数,通过Comparator.comparing方法指定按照时间字段进行比较。通过reversed方法可以将排序结果进行降序排列。
最后,使用collect方法将排序后的结果收集到一个新的列表中。
排序后的结果sortedObjects将按照时间字段降序排列。
原文地址: https://www.cveoy.top/t/topic/i9BC 著作权归作者所有。请勿转载和采集!