在Java中按键对 LinkedHashMap 进行排序
LinkedHashMap 维护插入顺序。将 LinkedHashMap 转换为 TreeMap,然后打印本质上排序的 TreeMap 的键。
例子:
Input: linkedHashMap = {{5,4}, {3,44}, {4,15}, {1,20}, {2,11}}
Output:
key -> 1 : value -> 20
key -> 2 : value -> 11
key -> 3 : value -> 44
key -> 4 : value -> 15
key -> 5: value -> 4
方法:
- 以 LinkedHashMap 作为输入。
- 创建新的树图。
- 将 LinkedHashMap 对象传递给 TreeMap 的构造函数。
- 打印 TreeMap 对象的键。
下面是上述方法的实现:
Java
// Sort LinkedHashMap by keys in Java
import java.util.*;
import java.io.*;
class GFG {
public static void main(String[] args)
{
LinkedHashMap lMap
= new LinkedHashMap<>();
// adding key-value pairs to LinkedHashMap object
lMap.put(5, 4);
lMap.put(3, 44);
lMap.put(4, 15);
lMap.put(1, 20);
lMap.put(2, 11);
System.out.println("After Sorting :\n");
// convert to TreeMap
Map map = new TreeMap<>(lMap);
// iterate acc to ascending order of keys
for (Integer sKey : map.keySet()) {
System.out.println("Key -> " + sKey
+ ": Value -> "
+ lMap.get(sKey));
}
}
}
输出
After Sorting :
Key -> 1: Value -> 20
Key -> 2: Value -> 11
Key -> 3: Value -> 44
Key -> 4: Value -> 15
Key -> 5: Value -> 4