Codename One 中 List<Date> 的其他排序方式

由于 Codename One没有实现完整的 Java API,是否有另一种排序日期列表的工作方式?


我在下面尝试过,两者都无法编译。


datesList.sort(Date::compareTo); // Failed

错误:无效的方法引用 datesList.sort(Date::compareTo);


// Failed

Collections.sort(datesList, new Comparator<Date>(){

    public int compare (Date d1, Date d2){

        return d1.compareTo(d2);

    }

});

错误:找不到符号 return d1.compareTo(d2);


获取月份最后一天的问题与以下相同:


cal.getActualMaximum(Calendar.DATE);

错误:找不到符号 cal.set(Calendar.DATE, cal.getActualMaximum(Calendar.DATE));


Cats萌萌
浏览 61回答 1
1回答

心有法竹

我建议 sortig 的另一个灵魂。您可以使用连接排序,如:dateList =&nbsp;&nbsp; &nbsp; datesList&nbsp; &nbsp; .stream()&nbsp; &nbsp; .sorted(&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; Comparator.comparingLong( e -> e.getTime() )&nbsp;&nbsp; &nbsp; ).collect(&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; Collectors.toList()&nbsp;&nbsp; &nbsp; );如果您还没有流式传输,请将比较方法更改为:Collections.sort(datesList, new Comparator<Date>(){&nbsp; &nbsp; public int compare (Date d1, Date d2){&nbsp; &nbsp; &nbsp; &nbsp; return Long.compare( d1.getTime() , d2.getTime());&nbsp; &nbsp; }});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java