Android 开发 Java中 list实现 按照时间格式 yyyy-MM-dd HH:mm 顺序

list集合按照时间排序

如果你有一个包含日期时间字符串(如 "2020-03-26 10:00")的列表,并希望根据这些日期时间字符串进行倒序排序,你可以使用 Collections.sort 方法结合一个自定义的比较器

  • 创建示例列表:我们创建了一个包含日期时间字符串的 ArrayList。
  • 定义日期时间格式:使用 SimpleDateFormat 定义日期时间格式 yyyy-MM-dd HH:mm。
    自定义比较器:
    1、 实现 Comparator 接口。
    2、 在 compare 方法中,将字符串解析为 Date 对象。
    3、使用 Date 对象的 compareTo 方法进行比较,并返回倒序结果(d2.compareTo(d1))。
  • 对列表进行排序:使用 Collections.sort 方法对列表进行排序,并传入自定义的比较器。
    打印排序后的列表:遍历并打印排序后的列表。
js 复制代码
// 示例列表
        List<String> dateTimeList = new ArrayList<>();
        dateTimeList.add("2020-03-26 10:00");
        dateTimeList.add("2020-03-25 09:00");
        dateTimeList.add("2020-03-27 11:00");
        dateTimeList.add("2020-03-26 08:00");
        // 定义日期时间格式
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
        // 自定义比较器
        Comparator<String> dateTimeComparator = new Comparator<String>() {
            @Override
            public int compare(String date1, String date2) {
                try {
                    Date d1 = sdf.parse(date1);
                    Date d2 = sdf.parse(date2);
                    return d2.compareTo(d1); // 倒序排序
                } catch (ParseException e) {
                    throw new RuntimeException("日期时间格式错误", e);
                }
            }
        };
        // 对列表进行排序
        Collections.sort(dateTimeList, dateTimeComparator);
        // 打印排序后的列表
        for (String dateTime : dateTimeList) {
            System.out.println("-----------"+dateTime);
        }
  • 打印结果

倒序 list集合倒序

js 复制代码
//倒序 list集合倒序
Collections.reverse(s);
相关推荐
DogDaoDao5 小时前
Android 硬件编码器参数完全指南:MediaCodec 深度解析
android·音视频·视频编解码·h264·硬编码·视频直播·mediacodec
二哈赛车手6 小时前
新人笔记---ApiFox的一些常见使用出错
java·笔记·spring
JohnnyDeng946 小时前
Android 自定义 View:Canvas 绘图与事件分发深度解析
android
栗子~~6 小时前
JAVA - 二层缓存设计(本地缓冲+redis缓冲+广播所有本地缓冲失效) demo
java·redis·缓存
YDS8296 小时前
DeepSeek RAG&MCP + Agent智能体项目 —— RAG知识库的搭建和接口实现
java·ai·springboot·agent·rag·deepseek
未若君雅裁8 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
AI人工智能+电脑小能手8 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
阿维的博客日记9 小时前
Nacos 为什么能让配置动态生效?(涉及 @RefreshScope 注解)
java·spring
雨辰AI9 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
Android小码家9 小时前
Framework之Launcher小窗开发
android·framework·虚拟屏·小窗