我正在使用Apache Collections库中的TreeBidiMap
。我想对那些 "双倍 "的值进行排序。
我的方法是用以下方法来检索一个 "集合 "的值。
Collection coll = themap.values();
这自然是行之有效的。
主要问题:我现在想知道如何将 "coll "转换/转换(不知道哪个正确)为 "List",以便对它进行排序?
然后我打算对排序后的List
对象进行迭代,它应该是有顺序的,并使用themap.getKey(iterator.next())
从TreeBidiMap
(themap
)获得适当的键,迭代器将在doubles
列表上进行。
List list = new ArrayList(coll);
Collections.sort(list);
正如Erel Segal Halevi在下面所说,如果coll已经是一个列表,你可以跳过第一步。 但这将取决于TreeBidiMap的内部情况。
List list;
if (coll instanceof List)
list = (List)coll;
else
list = new ArrayList(coll);
类似这样的东西应该可以工作,调用需要一个集合的ArrayList构造函数。
List theList = new ArrayList(coll);