hashmap - 如何在使用 java 8 流时将映射键转换为大写?

标签 hashmap java-8 java-stream

我有一个方法如下

private Map<String,List<String>>  createTableColumnListMap(List<Map<String,String>> nqColumnMapList){

        Map<String, List<String>> targetTableColumnListMap = 
                nqColumnMapList.stream()
                     .flatMap(m -> m.entrySet().stream())
                     .collect(groupingBy(Map.Entry::getKey, mapping(Map.Entry::getValue, toList())));
        return targetTableColumnListMap;
    }

我想大写 map 键,但找不到方法。有没有java 8的方法来实现这一点?

最佳答案

回答您的问题[您可以复制和粘贴]:

Map<String, List<String>> targetTableColumnListMap = nqColumnMapList.stream().flatMap(m -> m.entrySet().stream())
                .collect(Collectors.groupingBy(e -> e.getKey().toUpperCase(), Collectors.mapping(Map.Entry::getValue, Collectors.toList())));

关于hashmap - 如何在使用 java 8 流时将映射键转换为大写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39952335/

相关文章:

java - 使用 java 8 流生成一个 N 个字符长的虚拟字符串

Java 8流findFirst抛出NPE,无法从流中过滤掉非空对象

java - 如何为 HashMap 值动态创建表

c - C中以void指针为值的Hashmap实现问题

java - 如何从 Hashmap 中删除重复的键

java - 泛型和 lambdas - javac 和 Eclipse 编译器中的不同行为

java - 从 Java 并行流生成其他并行流并且很少失败

java - 字符串数组只包含字谜?

Java 8 非阻塞读取有竞争条件?

java - 如何使用 Java 8 流获取每个不同键的第一个值?