假设我有一对值列表 - 名称,等级
A = [ ('john',4), ('doe',7) .... ]
B = [ ('john',4), ('carmack',2) .....]
...
我想将上面的列表合并到一个合并排名的集合中,即
Combined = [ ('carmack',2),('john',4),('doe',7) ]
在sql术语中,这等于
SELECT * FROM (
SELECT * FROM A
UNION
SELECT * FROM B
UNION
....
) ORDER BY RANK
在Java中执行此操作的最有效方法是什么,我正在考虑将值放在地图中并根据键对地图进行排序。
答案 0 :(得分:4)
您可以使用TreeMap
,它允许您在其实例化中指定Comparator
,并根据此比较器或TreeSet
对您的元素进行排序,如果您希望排除重复。
答案 1 :(得分:0)