ArrayList如何对某个对象的日期属性排序?

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂

现实是:2021年10月24日09:52:35,祝大家节日快乐呐!
今天在项目过程中,遇到了个需求,需要对某个对象中的日期部分进行排序,也是解决了好久的一个问题,现在分享出来希望能帮助到大家。

按照开始日期进行从小到大排序
实体类:

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "ProjectVO对象", description = "项目表(project)")
public class ProjectVO extends Project  {private static final long serialVersionUID = 1L;//格式化日期//开始时间private String kaishiTime;//结束时间private String jieshuTime;//project对象private Project project;//年月日private String riqi;
}

排序的工具类:

package org.springblade.modules.hbv.util;import org.springblade.modules.hbv.vo.ProgrammeVO;
import org.springblade.modules.hbv.vo.ProjectVO;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Comparator;
import java.util.Date;/*** @author: muxiongxiong* @date: 2021年10月23日 下午 1:39* 公众号:雄雄的小课堂* 博客:https://blog.csdn.net/qq_34137397* 个人站:http://www.穆雄雄.com* 个人站:http://www.muxiongxiong.cn* @Description: 类的描述*/
public class SortByDate implements Comparator {public int compare(Object o1, Object o2) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分");Date begin = null;Date end = null;try {begin =sdf.parse(((ProjectVO)o1).getKaishiTime());end = sdf.parse(((ProjectVO)o2).getKaishiTime());} catch (ParseException e) {e.printStackTrace();}if (begin.after(end)) {return 1;} else {return -1;}}
}

调用排序工具类的部分代码展示:

//封装日期,让看好点儿SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分");for(String i : projectId){//先对日期进行截取ProjectVO projectVO = new ProjectVO();Project project = projectService.getById(Integer.parseInt(i));projectVO.setProject(project);Date begin = project.getBeginTime();projectVO.setKaishiTime(format.format(begin));Date end = project.getEndTime();projectVO.setJieshuTime(format.format(end));//需要重新封装在VO里面(一个方案对应多个项目)projectList.add(projectVO);}SortByDate sortByDate = new SortByDate();//调用排序日期的方法Collections.sort(projectList, sortByDate);

最后的projectList就是已经排序好的集合啦。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/323829.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

P3651-展翅翱翔之时【贪心,环套树】

正题 评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP3651 题目大意 有n个点,有n条有向边,改变每一个点的出边需要价值不同,求最小价值使所以边的头尾都可以相互到达。 解题思路 首先我们可以找出所以的环…

汇编语言(三十)之多模块求和

多文件模块编译,数组求和 程序运行: 暂无 代码: 模块一 extern PROADD:fardatas segmentarray dw 1,2,3,4,5,7,8,7,4,3array_len dw ($-array)/2sum dw 0 table dw 3 dup(?) datas endsstacks segment stackd…

vue+elementui中,el-select多选下拉列表中,如何同时获取:value和:label的值?

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。 项目场景: 正如题目所说,今天在项目过程中遇到了个需求,因为需要在前台展示运动员的名称,但是运动员的编号在别的地方还需要使用&#xff…

hdu4699-Editor【对顶栈】

正题 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid4699 大意 有5种操作 1.在光标处写入一个数字 2.在光标处删除一个数字 3.4.将光标往 左/右 移动 5.询问一个位置(光标前)之前的最大前缀和 解题思路 我们开两个栈,一个是存光标前&#x…

C#使用Xamarin开发可移植移动应用进阶篇(9.混淆代码,防止反编译)

嗯,既然是客户端应用,自然而然就需要一些防止源码泄漏的手段.通过C#编写的APP,完全是可以直接解压APK,然后得到里面的DLL然后进行反编译的.. 如下图: 嗯..这样就会造成代码泄漏.. 下面就介绍一下,如何使用VS自带的Dotfuscator来进行混淆代码. 1.安装Dotfuscator 打开VS2017…

想绝交,就借钱!

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”今天谈论的话题只有两个字,就是“钱”之前在原来单位工作的时候,老板就给我说,我弟弟的工资让我帮忙管着,不然到用的时候拿不出来&#…

luoguSP1805,POJ2559-Largest Rectangle in a Histogram【单调栈】

正题 POJ题目链接:http://poj.org/problem?id2559 luogu评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidSP1805 大意 有n个高度不同,宽度为1的长方形排列在一起。找到一个长方形使其面积最大 解题思路 我们先考虑单调递增的情况 …

Orleans解决并发之痛(一):单线程

程序在运行过程中有时会莫名其妙出现代码的某些约束或者执行结果和理想状况不一样,正常逻辑怎么会出现这样的情况?到底发生了什么?好像见了鬼!瞬间好无助。 谁来救救我 大多数出现正常逻辑很难解释的时候,我们可能会想…

你们考试,我们都有点紧张呢…

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”考试计划都好久好久了,一直没有时间,终于在今天考了一次。去监考的时候王老师还说,我都有点紧张呢,我说我也是,哈哈哈~上午几…

P2947-[USACO09MAR]向右看齐Look Up【单调栈】

正题 评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP2947 题目大意 有n头牛,高度不同,求每头牛右边第一头比他高的人。 解题思路 考虑单调栈,每次如果是比栈顶矮的就加入栈,如果是高的就将栈弹出直到比其…

汇编语言(三十一)之数字字符串加密与解密

输入一串数字,然后进行加密解密输出 程序运行: 代码: datas segmentline_max_len db 0ffh line db 0, 100h dup(?)linesecret db 0, 100h dup(?)linedesecret db 0, 100h dup(?)secret …

ASP.NET Core 运行原理解剖[1]:Hosting

SP.NET Core 是新一代的 ASP.NET,第一次出现时代号为 ASP.NET vNext,后来命名为ASP.NET 5,随着它的完善与成熟,最终命名为 ASP.NET Core,表明它不是 ASP.NET 的升级,而是一个重新设计的Web开发框架。而它一…

公众号文章

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。 常用的几个sql整理 1.按照日期统计今天的客流信息。 SELECT * FROM base_disanfang WHERE DATE_FORMAT(create_time,%Y-%m-%d) DATE_FORMAT(NOW(),%Y-%m-%d) 其中base_disanfang为表名…

POJ2259,luoguUVA540-Team Queue【队列】

正题 POJ题目链接:http://poj.org/problem?id2259 luogu评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidUVA540 题目大意 有n个队伍排队,新进来一个人时那个人会排在他的队伍的最后一个人的后面,如果这里没…

2017(深圳) .NET技术分享交流会 第二期,将有网络直播

2017 .NET技术分享交流会第一期已在5月13日成功举办,但是有同学反馈哪个地方有点偏,又过去了3个月,这期间一直没找到合适的地方举办活动,一直在南山科技园寻找经济适合的场地,终于找到一个安静,风景好的深圳…

汇编语言(三十二)之读写文件

读取文件的内容写到另一个文件 程序运行: 暂无 代码: datas segmentfile1 db d:\abc.txt,00 handle1 dw 0file2 db d:\def.txt,00 handle2 dw 0line_max_len db 0ffhline db 0, 100h dup(?)buffer db 0input …

整理几个常用的sql和其他代码

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”常用的几个sql整理1.按照日期统计今天的客流信息。SELECT * FROM base_disanfang WHERE DATE_FORMAT(create_time,%Y-%m-%d) DATE_FORMAT(NOW(),%Y-%m-%d)其中base_disanfang为表名&…

汇编语言(三十三)之四进制转十进制

输入四进制的数,转为十进制输出 程序运行: 代码: datas segmentN_string_max_length db 0ffhN_string db 0, 100h dup(?)N dw 0,0 sum dd 0 input db inp…

tyvj/joyOI 1305-最大子序和【单调队列】

正题 题目链接:http://www.joyoi.cn/problem/tyvj-1305 题目大意 求一段长度不超过m的最大子序和。 解题思路 用前缀和,我们可以枚举最右边的点,然后取左边合法范围内最小的前缀和,这个我们可以用单调队列进行优化。 code #in…

HTML中常用知识点整理

html复习HTML是一个超文本标记语言w3c标准&#xff1a;结构标准&#xff0c;表现标准&#xff0c;行为标准。基本结构<!doctype html> <html><head><title>网页的标题</title><meta charset"utf-8"/></head><body>&…