我的情况是HashMap为
Map<Integer,ArrayList> key = new HashMap<Integer,ArrayList>()
;
数组列表有[rankOfCard,suitOfCard]
我想以这样的方式对这个Map进行排序:如果值为
(1,[3,1])
(2,[2,4])
(3,[1,3])
(4,[1,2])
(5,[2,3])
输出应为:
(4,[1,2])
(3,[1,3])
(5,[2,3])
(2,[2,4])
(1,[3,1])
我怎样才能做到这一点?
答案 0 :(得分:1)
Iterate through entry set和Collection.sort(entry.value())
答案 1 :(得分:0)
Map
未排序,因此它不是您的任务的正确数据结构。
SortedMap
对键进行排序,所以它也不好,因为您希望地图按值排序。
您的问题并未阐明Map
的关键字是什么,但也许您可以在常规List
中使用自定义类,并让该类实现Comparable
接口,或实施外部Comparator
,以对List
进行排序。