由于代号一 not implementing完整的 Java API,是否有另一种排序日期列表的工作方式?
我已经在下面尝试过,但都无法编译。
datesList.sort(Date::compareTo); // Failed
error: invalid method reference datesList.sort(Date::compareTo);
// Failed
Collections.sort(datesList, new Comparator<Date>(){
public int compare (Date d1, Date d2){
return d1.compareTo(d2);
}
});
error: cannot find symbol return d1.compareTo(d2);
获取月份最后一天的问题与以下相同:
cal.getActualMaximum(Calendar.DATE);
error: cannot find symbol cal.set(Calendar.DATE, cal.getActualMaximum(Calendar.DATE));
最佳答案
我建议为 sortig 提供另一种解决方案。您可以像这样使用连接排序:
dateList =
datesList
.stream()
.sorted(
Comparator.comparingLong( e -> e.getTime() )
).collect(
Collectors.toList()
);
如果您还没有流式传输,请将比较方法更改为:
Collections.sort(datesList, new Comparator<Date>(){
public int compare (Date d1, Date d2){
return Long.compare( d1.getTime() , d2.getTime());
}
});
关于java - Codename One 中 List<Date> 的其他排序方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56455919/