小编Sha*_*wal的帖子

Java 8 Collectors.toMap 以 ArrayList 作为值

我想使用 java 8 将给定的二维数组转换为映射。输入 - { { 1, 0 }, { 2, 0 }, { 3, 1 }, { 3, 2 } } 输出的形式应为 Map<Integer,列表>映射=新的HashMap<>(); 输出 - {1=[0], 2=[0], 3=[1, 2]}

下面是我的解决方案

for (int[] prereq : prerequisites) {
            map.computeIfAbsent(prereq[0], k -> new ArrayList<>()).add(prereq[1]);
        }
Run Code Online (Sandbox Code Playgroud)

任何更好的方法,如果 for 循环可以用流代替。

lambda java-8 java-stream

1
推荐指数
1
解决办法
3254
查看次数

标签 统计

java-8 ×1

java-stream ×1

lambda ×1