java - 将 <String, String> 映射到 TreeMap<Integer, String>

标签 java maps treemap

我有一个Map<String, String>目的。我想让它按键排序,但键应该被视为整数。我刚刚创建了一个 TreeMap<Integer, String>(myMapObject)

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

最佳答案

您可以在 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());
}

关于java - 将 <String, String> 映射到 TreeMap<Integer, String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51741708/

相关文章:

java - 如何在 Java 中实例化泛型类型?

java - JTextField 中的输出,每行读取时都能保持刷新

r - 使用 ggsn 添加指北针和比例尺

java - DCEVM java 补丁不起作用

java - Spring Boot从application.properties读取值

javascript - 确定点是否在边界框内

r - 使用 tmap 包绘制时,两个多边形之间的边界线似乎与轮廓不同

java - 如何根据hashmap中的值合并键?

javascript - 来自没有层次结构的数组的 d3 树形图

java - 创建通用比较器来对 TreeMap 问题进行排序