Java8 Stream Lamdba sorted()排序遇到的小坑

前提

在业务中遇到一种情况,需要先 group by 再按时间倒序,mysql是可以处理,但是有些许麻烦,于是我遍想用程序处理成我想要的结果,经过了解发现Lamdba有一个sorted()方法,可以优雅的将List排序,而我需要将整个集合倒序,其中Collections提供了一个reverseOrder()方法,这个方法可以将整个集合倒序,但却遇到了一个问题( cannot be cast to java.lang.Comparable ),意思是实体类不能转化成Comparable

解决思路

经过测试发现List<String>、List<Integer>等包装类型是可以得到想要的结果,查看源码发现了这些类都实现了Comparable,我估摸着还得在实体类上实现这个接口呀,于是加上了之后,果然结果就如预期一致

小坑记录一下over~

原文地址:https://www.cnblogs.com/z-coding/p/14216174.html