今天遇到了一些问题,是关于在solr中获取数据排序的问题。

要关于pol_parent_id这一列来排序。

拿到需求的第一反应:妈耶  这么简单也叫我。   然后就直接:

query.addSort("pol_creadt_time", SolrQuery.ORDER.desc);

没毛病  编译执行。

返回的结果让我一脸懵???不对劲啊,于是我又再一次查询:

(黑人问号脸???)顺序是发生了变化,但是没有按照预想的发生。

哦豁???我这种小辣鸡又不太懂solr,虽然看到排序错误第一反应是solr里的字段设置错误。但我这种实习生也不能去改公司的solr啊..

于是乎陷入了沉思....

哦豁  哦豁豁!

我想到既然查询到最后也是用List来接这个结果,那我直接去改List里的排序不就好了吗??嘻嘻嘻嘻

new一个list来循环?

不不不,既然都有现成的工具为啥要麻烦自己呢。

Collections有一个sort方法,这时候拿出来用刚刚好,首先看看大佬们对这个方法的看法:

http://blog.csdn.net/xx326664162/article/details/52227690 文章出自:薛瑄的博客

好的,提炼成适合我的方法:

//根据时间排序
Collections.sort(list, new Comparator<PageData>() {@Overridepublic int compare(PageData temp1, PageData temp2) {SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");try {Date dt1 = format.parse(temp1.getString("pol_creat_time"));Date dt2 = format.parse(temp2.getString("pol_creat_time"));if (dt1.getTime() < dt2.getTime()) {return 1;} else if (dt1.getTime() > dt2.getTime()) {return -1;} else {return 0;}} catch (Exception e) {e.printStackTrace();}return 0;}
});

因为我不确定solr中的该字段数据类型,所以直接以string的方式拿了出来,再用格式转换成日期类型(我承认我是个傻乎乎的)

如果需要改变成比较别的内容的话,只要改变一下比较方式就好啦

笑嘻嘻保存编译运行。完美

关于List集合排序(关于时间)相关推荐

  1. Map集合的按时间排序方法

    Map集合的按时间排序方法 一.简单介绍Map 在讲解Map排序之前,我们先来稍微了解下map.map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及Li ...

  2. Java集合排序及java集合类详解

    Java集合排序及java集合类详解 (Collection, List, Set, Map) 摘要内容 集合是Java里面最常用的,也是最重要的一部分.能够用好集合和理解好集合对于做Java程序的开 ...

  3. 对后台返回的数据进行评分排序、时间排序!

    导读:对后台返回的数据进行评分排序,时间排序,可以倒序,可以正序. 按照评分排序 正序 qualityScoreSort(){this.tableData0.sort((a, b) => {re ...

  4. java怎么给list集合排序_java list集合排序按某一属性排序操作

    我就废话不多说了,大家还是直接看代码吧~ public List sortList(List list){ Collections.sort(list, new Comparator(){ @Over ...

  5. 【Java基础篇】集合排序

    所谓集合排序是指对集合内的元素进行排序. 集合工具类Collections中提供了两种排序算法,分别是: Collections.sort(List list) Collections.sort(Li ...

  6. java8新特性:对map集合排序

    一.简单介绍Map 在讲解Map排序之前,我们先来稍微了解下map,map是键值对的集合接口,它的实现类主要包括:HashMap, TreeMap, Hashtable以及LinkedHashMap等 ...

  7. java 集合排序方法_java集合排序方法sort的使用

    转自  http://blog.csdn.net/a1165117473/article/details/6965652 /* * To change this template, choose To ...

  8. 写了一个对象集合排序的类

    写了一个对象集合排序的类 废话不多说,首先是定义一个对象实体类     class Entity     {         public Entity()         {}         pr ...

  9. 使用stream流进行集合排序取最大值,根据集合中的bigdemal属性排序(正序反序)并取最大值

    业务: 求折线图的UPH图相关数据,前端动态修改纵轴的峰值,需要后端获取最大值 1)根据集合某个属性(业务以bigdecimal数据为例)进行集合排序,包括升序反序 2)根据集合的某个number数值 ...

  10. 简单排序算法时间空间复杂度分析及应用(4)-二分插入排序

    简单排序算法时间空间复杂度分析及应用(4)-二分插入排序 背景: 顾名思义,这个二分插入排序是直接插入排序的进化版,主要变化的地方就是在内循环部分,即外循环的循环节点在确定区域的位置查询方式由原来的直 ...

最新文章

  1. scn exercise view.setModel will trigger binding creation in Fiori
  2. @value 静态变量_面试官:为什么静态方法不能调用非静态方法和变量?
  3. oracle 00371,PLS-00371: 'WEB_LOGIN_CHECK_PK.CURSORTYPE' 最多允许有一个声明
  4. 史上最简单JS复制功能,兼容安卓ios!
  5. python输出print(x+y)_Python语句序列“x='car';y=2;print(x+y)”的输出结果是() (2.0分)_学小易找答案...
  6. 10参数_荣耀V40屏幕参数:10亿色视网膜级超感屏
  7. 如何快速将一个lista集合中的部分字段值组合成新的的listb部分*
  8. wx-jq:一套完全原创的微信小程序插件集合库
  9. 【读书笔记】iOS-访问网络
  10. 全网首发:字体引擎中字符图像的插槽
  11. 八种颠覆未来作战的前沿技术
  12. STM32F7 I2S接口 WM8978 边播放 边录音
  13. 【人工智能】归结演绎推理
  14. 《嵌入式开发》实验项目
  15. 【Jupyter Notebook】slides演示小技巧
  16. vue构建pc端项目(ElementUI)、vue入门小应用
  17. 爬虫学习日记1-豆瓣top250电影信息爬取
  18. python之json格式数据的提取
  19. 基因组大数据变异检测算法的并行优化
  20. ftp文件搜索服务器,ftp服务器文件搜索

热门文章

  1. 大数据技术原理与应用—课后题答案(第一章)
  2. [Python 高德地图] API调用学习历程(三)
  3. Excel表格打开出现“文件已损坏,无法打开”
  4. SQL低版本连续多条记录合并,多条记录分组合并
  5. 【SQL】interval关键字用法
  6. QPaint旋转错位问题
  7. vmware for linux 下载和安装
  8. [附源码]计算机毕业设计JAVA房屋租赁管理系统
  9. Lisp语言:列表(List)
  10. 鸿蒙系统第一批适配,4月开始脱离安卓系统!华为鸿蒙OS 2.0首批适配机型