java如何自定义List中的sort()排序且用于日期排序
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本篇文章给大家分享的是有关java如何自定义List中的sort()排序且用于日期排序,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。ja
千家信息网最后更新 2026年10月31日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"); List list=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安全错误
数据库的锁怎样保障安全
什么是科技互联网
深圳市人人互联网科技有限公司
互联网科技巨头监管
科技互联网技术
致骋互联网科技
华中科技大学互联网
天下捷融互联网科技
齐家互联网科技有限公司
四川狮子座互联网科技
哈尔滨新华互联网科技
互联网巨头投资的硬核科技
互联网和高科技公司
汽车互联网创新科技园
996高科技互联网公司
高科技互联网发展前景如何
互联网科技资金流入
工业互联网科技创业
珠海东科互联网科技有限公司
中国新注册互联网科技
武汉亿视互联网科技有限公司
科技互联网公司装修
新华互联网科技学院
互联网的科技创新
平安科技 互联网
上海亿帐通互联网科技
互联网科技股午盘股票涨跌
互联网科技公司的市场部门
想开互联网科技公司怎么样
特约风豹互联网科技为什么扣费
世界互联网领先科技成果获奖