我有一张地图,他的键和值就像对象

    List<AppointmentRequest> list=AppointmentRequest.findAllAppointmentRequests();
    for(AppointmentRequest a:list){
        Store store=Store.findStore(a.getStoreId());
        map.put(AppointmentRequest.findAppointmentRequest(a.getId()),store);

    }

约会请求包含日期列
现在我想按此列对地图进行排序,以在jsp页面中显示它,有人可以帮我吗?

最佳答案

使用TreeMap


  基于红黑树的NavigableMap实现。根据映射键的自然顺序或在映射创建时提供的Comparator对映射进行排序,具体取决于所使用的构造函数。


向构造函数提供一个Comparator以便按日期列对键进行排序。

它看起来像这样:

Map<AppointmentRequest,Store> map =
    new TreeMap(new Comparator<? super AppointmentRequest> comparator {
        int compare(AppointmentRequest o1, AppointmentRequest o2) {
            // return -1,0 or 1 based on the relative order of o1 and o2
        }
    });

10-08 06:47