Java List<Map<String, Object>> 中 Map 的时间 create_date 倒序排序
可以使用 Collections 的 sort 方法对 List 进行排序,同时使用 Comparator 来指定排序规则。对于 List 中的每个 Map,可以通过键值对的方式获取到 create_date 字段的值,然后将其转换为 Date 类型进行比较。\n\n以下是一个示例代码:\n\njava\nimport java.text.ParseException;\nimport java.text.SimpleDateFormat;\nimport java.util.*;\n\npublic class Main {\n\n public static void main(String[] args) throws ParseException {\n // 创建一个 List<Map<String, Object>>\n List<Map<String, Object>> list = new ArrayList<>();\n\n // 添加测试数据\n SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");\n Map<String, Object> map1 = new HashMap<>();\n map1.put("create_date", dateFormat.parse("2022-01-01 12:00:00"));\n list.add(map1);\n\n Map<String, Object> map2 = new HashMap<>();\n map2.put("create_date", dateFormat.parse("2022-01-02 10:00:00"));\n list.add(map2);\n\n Map<String, Object> map3 = new HashMap<>();\n map3.put("create_date", dateFormat.parse("2022-01-03 08:00:00"));\n list.add(map3);\n\n // 对 List 进行排序,根据 create_date 字段进行倒序排序\n Collections.sort(list, new Comparator<Map<String, Object>>() {\n @Override\n public int compare(Map<String, Object> map1, Map<String, Object> map2) {\n Date date1 = (Date) map1.get("create_date");\n Date date2 = (Date) map2.get("create_date");\n return date2.compareTo(date1); // 倒序排序\n }\n });\n\n // 输出排序结果\n for (Map<String, Object> map : list) {\n Date createDate = (Date) map.get("create_date");\n System.out.println(dateFormat.format(createDate));\n }\n }\n}\n\n\n运行结果为:\n\n\n2022-01-03 08:00:00\n2022-01-02 10:00:00\n2022-01-01 12:00:00\n\n\n可以看到,List 中的 Map 按照 create_date 字段进行了倒序排序。
原文地址: https://www.cveoy.top/t/topic/qgQj 著作权归作者所有。请勿转载和采集!