java - 将 Java 映射枚举键转换为映射字符串键

标签 java dictionary java-8

我有以下 map :

Map<DataFields, String> myMap;

但我需要将其转换为以下内容:

Map<String, String> myMap;

我最好的甚至没有编译的微弱尝试是:

myMap.keySet().stream().map(k -> k.name()).collect(Collectors.toMap(k, v)

最佳答案

您需要流式传输 entrySet()(因此您同时拥有键和值),并将它们收集到 map 中:

Map<String, String> result =
    myMap.entrySet()
         .stream()
         .collect(Collectors.toMap(e -> e.getKey().name(), e -> e.getValue()));

关于java - 将 Java 映射枚举键转换为映射字符串键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49015714/

相关文章:

java - JaCoCo 动态排除覆盖率 0% 的包

java - 类型为“没有时区的时间戳”的数据库中的UTC时间作为响应显示在UTC中

c# - 比较在字典中用作键的对象

java - 在 Java-8 中生成组合的通用方法

java - 是否可以将 Java 中的标准输出设置为文件和标准输出?

java - 使用 NetBeans 设置图像库

Python 字典,其值作为 pandas DataFrame 的元组

python - 在Python中比较列表/字典中单词的最有效方法

java - Lambda 表达式和匿名类之间的实现差异/优化

java - 通过函数/供应商访问 lambda 参数