java如何自定义List中的sort()排序且用于日期排序
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,本篇文章给大家分享的是有关java如何自定义List中的sort()排序且用于日期排序,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。ja
千家信息网最后更新 2025年01月16日java如何自定义List中的sort()排序且用于日期排序
本篇文章给大家分享的是有关java如何自定义List中的sort()排序且用于日期排序,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
java 自定义List中的sort()排序
1、问题描述
List是java中一个有序可重复的的集合,其中自带的.sort()排序方法,该方法在针对纯数字类型List集合排序的时候很有效。但是对于装入其他类型的List集合,自带的sort()方法排序我们很难控制,比如一个日期集合的排序。
2、解决方法
java中List允许我们自定义sort()排序方法,以下自定义了List集合的sort排序方法,用于对一个字符串类型的日期集合进行排序。
//待排序的集合Listlist=new ArrayList ();list.add("2019-06");list.add("2019-11");list.add("2019-02");list.add("2019-09");list.add("2019-05");//自定义list排序,集合数据(月份)按升序排序;final SimpleDateFormat sdft = new SimpleDateFormat("yyyy-MM");Collections.sort(list, new Comparator (){ @Override public int compare(String month2, String month3) { int mark = 1; try { Date date1 = sdft.parse(month2); Date date2 = sdft.parse(month3); if(date1.getTime() < date2.getTime()){ mark = -1;//调整顺序,-1为不需要调整顺序; } if(month2.equals(month3)){ mark = 0; } } catch (ParseException e) { LOG.error("日期转换异常", e); e.printStackTrace(); } return mark; } //compare});
3、其他
另外java两个日期类型的对象也可以用如下方法进行比较。
Date() date1=new Date();Date() date2=new SimpleDateFormat("yyyy-MM-dd").parse("2019-06-11");Boolean flag;if(date1.before(date2)){ flag=true;}
a.before(b);该方法是判断a日期是否小于b日期,返回的是一个布尔类型结果。
java Collections类:sort()升序排序
正向排序
使用 Collections 类的静态方法 sort() 可以对集合中的元素进行升序排序。这要求列表中的所有元素都必须实现 Comparable 接口,而且所有元素都必须是使用指定比较器可相互比较的。
sort() 方法主要有如下两种重载形式
void sort(List list)
:根据元素的自然顺序对集合中的元素进行升序排序。void sort(List list,Comparator comparator)
:按 comparator 参数指定的排序方式对集合中的元素进行排序。
public class Test{ public static void main(String[] args) { Student Student =new Student("张1","6M"); Student Student1 =new Student("张2","1M"); Student Student2 =new Student("张4","5M"); Student Student3 =new Student("张5","1M"); Listlist=new ArrayList (); list.add(Student); list.add(Student1); list.add(Student2); list.add(Student3); Collections.sort(list, new Comparator () { @Override public int compare(Student o1, Student o2) { return o2.getAge().compareTo(o1.getAge()); } }); System.out.println(list.toString()); } }
以上就是java如何自定义List中的sort()排序且用于日期排序,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
排序
方法
日期
元素
类型
升序
顺序
更多
知识
篇文章
调整
实用
有序
有效
两个
参数
字符
字符串
对象
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
反诈网络安全心得体会
通过语句查看连接数据库
静音服务器和普通服务器
服务器和网关地址需要同一网段吗
邯郸市移动网络安全
学位论文数据库标注方式
总工会网络安全宣传总结
wds服务器未及时响应
怎么接受网上软件开发订单
vs项目部署到服务器
华为服务器设置管理口ip
java前端数据库
斗罗大陆决战封神服务器
网络安全大赛在哪下
四川lol服务器
sql服务器连接电脑
微信读取本机号码会上传服务器吗
数值型数据数据库
市联数据库
西安掌宝互联网科技
数据库选课系统物理设计实例
软件开发技术选型标准是什么
安徽推荐的软件开发供应商
软件开发公司培训内容有哪些
南充高密度存储服务器厂家
网络安全法关键每
软件开发公司应聘行政岗位职责
数据库技术李雁翎答案
影响黄金 原油的数据库
大学生研究生论文数据库