This question already has answers here:
Java 8 List<V> into Map<K, V>

(22 个回答)


3年前关闭。




我有以下代码,并想使用 java 8 将 Long 列表转换为 Map<Long,Long>
Long globalVal= 10;
List<Long> queryLongs = Arrays.asList(600L,700L,800L);
Map<Long, Long> map = queryLongs.stream().collect(Collectors.toMap(i->i, globalVal)));

当我尝试将列表中的单个值映射为映射键时出现错误。

最佳答案

toMap 的第二个参数也是 Function ,所以你不能只传递 globalVal

Map<Long, Long> map = queryLongs.stream()
                                .collect(Collectors.toMap(Function.identity(),
                                                          i->globalVal));

关于java - 如何将 List<Long> 转换为 Map<Long, Long>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46953332/

10-11 20:42
查看更多