当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


erlang merge(Fun, Dict1, Dict2)用法及代码示例


merge(Fun, Dict1, Dict2) -> Dict3
类型:
Fun = fun((Key, Value1, Value2) -> Value)
Dict1 = dict(Key, Value1)
Dict2 = dict(Key, Value2)
Dict3 = dict(Key, Value)

合并两个字典 Dict1Dict2 来创建一个新字典。两个词典中的所有 Key - Value 对都包含在新词典中。如果某个键同时出现在两个字典中,则使用该键和两个值调用 Fun 以返回新值。 merge 可以定义如下,但速度更快:

merge(Fun, D1, D2) ->
    fold(fun (K, V1, D) ->
                 update(K, fun (V2) -> Fun(K, V1, V2) end, V1, D)
         end, D2, D1).

相关用法


注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 merge(Fun, Dict1, Dict2) -> Dict3。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。