我有一个{{1}}对象。我想按键对它进行排序,但键应视为整数。我刚刚创建了一个{{1}}。
但这显然行不通。如何创建新的TreeMap并将键从String更改为Integer?
答案 0 :(得分:3)
您可以在Java 8中使用Collectors.toMap
:
Map<Integer, String> map1 = map.entrySet().stream().collect(Collectors.toMap(entry -> Integer.parseInt(entry.getKey()), Map.Entry::getValue, (a, b) -> b));
或低于传统方法:
Map<Integer, String> map1 = new HashMap<>();
for(final Map.Entry<String, String> entry : map.entrySet()){
map1.put(Integer.parseInt(entry.getKey()), entry.getValue());
}