可以使用Collections的sort方法对List进行排序,同时使用Comparator来指定排序规则。对于List中的每个Map,可以通过键值对的方式获取到create_date字段的值,然后将其转换为Date类型进行比较。

以下是一个示例代码:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;

public class Main {

    public static void main(String[] args) throws ParseException {
        // 创建一个List<Map<String, Object>>
        List<Map<String, Object>> list = new ArrayList<>();

        // 添加测试数据
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Map<String, Object> map1 = new HashMap<>();
        map1.put("create_date", dateFormat.parse("2022-01-01 12:00:00"));
        list.add(map1);

        Map<String, Object> map2 = new HashMap<>();
        map2.put("create_date", dateFormat.parse("2022-01-02 10:00:00"));
        list.add(map2);

        Map<String, Object> map3 = new HashMap<>();
        map3.put("create_date", dateFormat.parse("2022-01-03 08:00:00"));
        list.add(map3);

        // 对List进行排序,根据create_date字段进行倒序排序
        Collections.sort(list, new Comparator<Map<String, Object>>() {
            @Override
            public int compare(Map<String, Object> map1, Map<String, Object> map2) {
                Date date1 = (Date) map1.get("create_date");
                Date date2 = (Date) map2.get("create_date");
                return date2.compareTo(date1); // 倒序排序
            }
        });

        // 输出排序结果
        for (Map<String, Object> map : list) {
            Date createDate = (Date) map.get("create_date");
            System.out.println(dateFormat.format(createDate));
        }
    }
}

运行结果为:

2022-01-03 08:00:00
2022-01-02 10:00:00
2022-01-01 12:00:00

可以看到,List中的Map按照create_date字段进行了倒序排序

java对listListMapString Object中map中的时间create_date进行倒叙排序

原文地址: https://www.cveoy.top/t/topic/izL3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录