HashMap排序文章 上面转载的文章是没谈到double的降序问题
重写之后,只有compareto 支持double类型的比较
默认是升序
List<Map.Entry<Accommodation, Double>> list = new ArrayList<Map.Entry<Accommodation, Double>>(map.entrySet());
Collections.sort(list, new Comparator<Map.Entry<Accommodation, Double>>() { //默认升序,重写compare
@Override
public int compare(Map.Entry<Accommodation, Double> o1, Map.Entry<Accommodation, Double> o2) {
return o2.getValue().compareTo(o1.getValue());
}
});
我这里是利用double去排序Accmmodation,我的项目是计算距离后排序酒店的显示
最后想降序去排列的,可惜找不到方法,也挺麻烦,我就直接list反转。
Collections.reverse(accommodationArrayList); //double无法降序排,只能反转列表
然后这样就做到了double类型的降序。希望有大佬分享下简便方法。