Java 8 Stream API中如何实现自定义复杂排序的示例?

2026-05-16 04:570阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1256个文字,预计阅读时间需要6分钟。

Java 8 Stream API中如何实现自定义复杂排序的示例?

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 Stream API中如何实现自定义复杂排序的示例?

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 排序即可。

优点:可动态配置。

阅读全文