ArrayList如何对某个对象的日期属性排序?
生活随笔
收集整理的這篇文章主要介紹了
ArrayList如何对某个对象的日期属性排序?
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
大家好,我是雄雄,歡迎關(guān)注微信公眾號(hào):雄雄的小課堂
現(xiàn)實(shí)是:2021年10月24日09:52:35,祝大家節(jié)日快樂(lè)吶!
今天在項(xiàng)目過(guò)程中,遇到了個(gè)需求,需要對(duì)某個(gè)對(duì)象中的日期部分進(jìn)行排序,也是解決了好久的一個(gè)問(wèn)題,現(xiàn)在分享出來(lái)希望能幫助到大家。
按照開(kāi)始日期進(jìn)行從小到大排序
實(shí)體類(lèi):
排序的工具類(lèi):
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* 公眾號(hào):雄雄的小課堂* 博客:https://blog.csdn.net/qq_34137397* 個(gè)人站:http://www.穆雄雄.com* 個(gè)人站:http://www.muxiongxiong.cn* @Description: 類(lèi)的描述*/ public class SortByDate implements Comparator {public int compare(Object o1, Object o2) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH時(shí)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;}} }調(diào)用排序工具類(lèi)的部分代碼展示:
//封裝日期,讓看好點(diǎn)兒SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 HH時(shí)mm分");for(String i : projectId){//先對(duì)日期進(jìn)行截取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里面(一個(gè)方案對(duì)應(yīng)多個(gè)項(xiàng)目)projectList.add(projectVO);}SortByDate sortByDate = new SortByDate();//調(diào)用排序日期的方法Collections.sort(projectList, sortByDate);最后的projectList就是已經(jīng)排序好的集合啦。
總結(jié)
以上是生活随笔為你收集整理的ArrayList如何对某个对象的日期属性排序?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 电脑DNS配置经常异常,怎么办?
- 下一篇: 你们考试,我们都有点紧张呢…