Java 8 Stream API中如何实现自定义复杂排序的示例?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1256个文字,预计阅读时间需要6分钟。
Java 8 自定义排序需求:今日项目中遇到需求,需根据对象中的三个属性进行排序。具体要求如下:
对象:Obj [a, b, c]优先级:a+b+c(2)、a属性(中文)
排序规则:政府
java 8 自定义排序
需求
今天在项目中遇到个需求,按照对象中的三个属性进行排序。
具体要求:
前提:对象 Obj [a=a,b=b,c=c]
1、 优先级为a > b > c
2、 a属性为中文,固定排序规则为:政府,合作,基金 … …
3、 b的为BigDecimal类型,固定的排序规则为:降序排序
4、 c为java.util.Date类型,规则为:降序排序
其实看这个需求,第3点和第4点不是什么问题,但是第1点,会考虑下怎么实现好。
直接上方案吧!
方案一
新建一张排序表,至少要有字段 ,在Obj表中的a字段存排序表的id。
此时可以直接用sql语句 ORDER BY 排序即可。
优点:可动态配置。
本文共计1256个文字,预计阅读时间需要6分钟。
Java 8 自定义排序需求:今日项目中遇到需求,需根据对象中的三个属性进行排序。具体要求如下:
对象:Obj [a, b, c]优先级:a+b+c(2)、a属性(中文)
排序规则:政府
java 8 自定义排序
需求
今天在项目中遇到个需求,按照对象中的三个属性进行排序。
具体要求:
前提:对象 Obj [a=a,b=b,c=c]
1、 优先级为a > b > c
2、 a属性为中文,固定排序规则为:政府,合作,基金 … …
3、 b的为BigDecimal类型,固定的排序规则为:降序排序
4、 c为java.util.Date类型,规则为:降序排序
其实看这个需求,第3点和第4点不是什么问题,但是第1点,会考虑下怎么实现好。
直接上方案吧!
方案一
新建一张排序表,至少要有字段 ,在Obj表中的a字段存排序表的id。
此时可以直接用sql语句 ORDER BY 排序即可。
优点:可动态配置。

