关闭

Java集合排序,针对多个字段排序

428人阅读 评论(0) 收藏 举报
分类:

有时,我们希望对list中的数据进行排序。但是要根据多个字段。

比如根据开始和结束时间。

开始时间和结束时间可以为空。

这时再使用Collections.sort时,就比较麻烦了。

可以改变下思路,采用一个中间临时变量的方式。

这样就可以控制优先显示哪些内容了。

比如需求是有些

显示开始和结束时间都不为空--》结束时间为空,开始时间不为空--》开始时间为空,结束时间不为空--》开始和结束时间都为空。

这时,就可以当结束时间为空时,把seq加一个值,这样就会显示在开始时间为空的前面了。

Collections.sort(list, new Comparator<Test>() {
                @Override
                public int compare(Tes o1, Test o2) {
                    return o2.getSeq().compareTo(o1.getSeq());
                }
            });

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:439655次
    • 积分:7019
    • 等级:
    • 排名:第3253名
    • 原创:185篇
    • 转载:568篇
    • 译文:0篇
    • 评论:45条
    最新评论