我有一张地图,他的键和值就像对象
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
}
});