Collections.sort 依据多个字段排序
来源:互联网 发布:卡通人物软件 编辑:程序博客网 时间:2024/06/05 21:03
今天有个需求,需要根据用户报名的课程进行排序。排序的规则包含了4个方面:有直播优先;当前专题优先;有直播的,按直播时间正序;无直播的,按最后学习时间倒序。在使用Collections.sort,最后写出来的效果,利用多个字段,对列表进行排序
Collections.sort(result, new Comparator<EnrolmentVO>() { @Override public int compare(EnrolmentVO a, EnrolmentVO b) { // 有直播的优先 if (!a.getLiveStatus().equals(b.getLiveStatus())) { return a.getLiveStatus().compareTo(b.getLiveStatus()); } // 当前专题优先 if (!a.getCurrentSpecialLive().equals(b.getCurrentSpecialLive())) { return b.getCurrentSpecialLive().compareTo(a.getCurrentSpecialLive()); } // 有直播的,按直播时间正序 if (a.getLatestLiveTime() != null && b.getLatestLiveTime() != null) { return a.getLatestLiveTime().compareTo(b.getLatestLiveTime()); } // 无直播的,按最后学习时间倒序 return b.getLastLearningTime().compareTo(a.getLastLearningTime()); }});
这样比较清晰,比之前用sort定义数值再来排序,更容易扩展
阅读全文
0 0
- Collections.sort 依据多个字段排序
- <xsl:sort>对多个字段进行排序
- 使用std::sort() 依据元素的字段值对容器内元素排序
- Collections.sort()排序使用方法
- Collections.sort()排序使用方法
- Collections.sort 排序
- Collections sort 排序
- Collections.sort() 排序
- Collections.sort排序
- Collections.sort排序
- android Collections.sort排序
- Collections.sort排序
- Collections.sort()排序
- Collections.sort排序
- Collections.sort排序
- list排序(Collections.sort())
- Collections.sort自定义排序
- Collections排序sort排序list多条件排序
- nuxt之axios 二次封装
- Linux实验4
- redis的数据类型,命令以及应用场景
- 帮忙framebuffer扫盲
- PE内存映射机制(总结于小甲鱼)
- Collections.sort 依据多个字段排序
- FrameBuffer浅谈
- java语言 基础总结
- RxJava响应式编程
- 2017.11.01【NOIP提高组】冲刺A组 总结
- 深入学习理解二叉搜索树(附详细讲解与实例分析)
- centos7安装最新版git_https://my.oschina.net/antsky/blog/514586
- Java8函数式编程之五:方法引用详解
- linux内核驱动基础