【发布时间】:2018-01-22 20:00:05
【问题描述】:
如何将像some_maps = [%{"test" => [1]}, %{"test2" => [2]}, %{"test" => [3]}] 这样的地图列表转换为一个巨大的单一地图,并将其值合并?
single_map = %{"test" => [1, 3], "test2" => [2]}
由于我无法在 for 这样的迭代中修改地图,所以我不知道如何构建此地图
在其他语言中,我会定义一个空地图并遍历列表并填充地图,但在功能上我认为我不知道该怎么做。
【问题讨论】:
-
对于这些您想要迭代和更改某些内容的问题,答案始终是
Enum.reduce。 :) Enum 模块中的所有其他功能都是在它之上实现的。我可以发布完整的答案,但我认为如果你尝试先解决它 Enum.reduce,你会学到更多。 -
谢谢!我正在尝试减少但无法弄清楚,我会继续尝试,很难以功能方式思考:P
标签: elixir