小编Kas*_*yPR的帖子

将对象列表转换为Map

我正在尝试将玩家列表转换为地图。播放器包含名称并作为变量运行。

List<Player> runnerList = Arrays.asList(new Player("Virat", 4654), new Player("Jaddu", 5798),
            new Player("Dhoni", 4581), new Player("Virat", 8709), new Player("Dhoni", 4711),
            new Player("Virat", 4541));
Run Code Online (Sandbox Code Playgroud)

我的问题是我试图通过使用流合并运行来转换为地图,而无法通过。

尝试每个并合并值,如下所示,并获得预期结果。

playerList.forEach(n -> {
            mapVal.merge((n.getName()), (n.getDistance()), (val1, val2) -> IntStream.of(val1, val2).sum());
        });
Run Code Online (Sandbox Code Playgroud)

寻找使用流的解决方案的结果将是{Dhoni = 9292,Jaddu = 5798,Virat = 17904}。

java hashmap java-stream

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

标签 统计

hashmap ×1

java ×1

java-stream ×1