四种方法快速预览
Method 1
不管是Date、String、Long类型的日期都可以排序,无需转换
orders.sort((t1, t2) -> t2.getPayTime().compareTo(t1.getPayTime()));
Method 2
利用stream,需要把字符串日期转换为时间戳
orders = orders.stream().sorted((t1,t2) ->
Long.compare(convertTimeToLong(t2.getPayTime()),
convertTimeToLong(t1.getPayTime()))).
collect(Collectors.toList());
Method 3
利用Comparator接口实现,java8的写法
Collections.sort(orders, Comparator.comparing(Order::getPayTime, (t1, t2) -> t2.compareTo(t1)));
Method 4
利用Comparator接口实现,java8之前通常这样写
Collections.sort(orders,new Comparator<Order>(){
@Override
public int compare(Order o1, Order o2) {
return o2.getPayTime().compareTo(o1.getPayTime());
}
});```