1

我有一个 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])

我怎样才能做到这一点?

4

2 回答 2

1

遍历条目集Collection.sort(entry.value())

于 2012-07-16T12:48:52.683 回答
0

AMap未排序,因此它不是您的任务的正确数据结构。A SortedMapsorts on keys,所以它也不好,因为你希望你的地图按value排序。

您的问题没有说明 的关键Map是什么,但也许您可以在常规中使用自定义类List,并让该类实现Comparable接口,或实现外部Comparator,以对List.

于 2012-07-16T13:23:39.747 回答