ize*_*god 2 java collections maps multimap guava
输出为:顶部密码: {1=[456008, 456600, 456666], 2=[560089], 4=[456098, 567789]}
我希望他们按此顺序: {4=[456098,567789], 2=[560089], 1=[456008, 456600, 456666]}
HashMap<Integer, Integer> totalCustomersByPin = new HashMap<Integer, Integer>();
TreeMultimap<Integer, Integer> totalDeliveriesToPin = TreeMultimap.create();
Iterator<Entry<Integer, Integer>> iterator = totalCustomersByPin.entrySet().iterator();
while (iterator.hasNext()) {
Entry<Integer, Integer> pair = iterator.next();
totalDeliveriesToPin.put(pair.getValue(), pair.getKey());
}
System.out.println("Top pincodes:" + totalDeliveriesToPin);
Run Code Online (Sandbox Code Playgroud)
您可以在创建时设置键比较器TreeMultimap.您可以使用Ordering.natural()然后调用reverse()以按自然顺序的相反顺序对键进行排序.
示例代码:
public static void main(String[] args) {
TreeMultimap<Integer, Integer> map = TreeMultimap.create(Ordering.natural().reverse(), Ordering.natural());
map.put(1, 456008);
map.put(1, 456600);
map.put(1, 456666);
map.put(2, 560089);
map.put(4, 456098);
map.put(4, 567789);
System.out.println(map);
}
Run Code Online (Sandbox Code Playgroud)
这将打印:{4=[456098, 567789], 2=[560089], 1=[456008, 456600, 456666]}.
| 归档时间: |
|
| 查看次数: |
3032 次 |
| 最近记录: |