映射<string,string =“”>到TreeMap <integer,string =“”>

时间:2018-08-08 08:12:23

标签: java maps treemap

我有一个{{1}}对象。我想按键对它进行排序,但键应视为整数。我刚刚创建了一个{{1}}。

但这显然行不通。如何创建新的TreeMap并将键从String更改为Integer?

1 个答案:

答案 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());
}