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


erlang groups_from_list(KeyFun, List)用法及代码示例


groups_from_list(KeyFun, List) -> GroupsMap
OTP 25.0
类型:
KeyFun = fun((Elem) -> Key)
GroupsMap = #{Key => Group}
Key = term()
List = Group = [Elem]
Elem = term()

将给定的 List 划分为组映射。

结果是一个映射,其中每个键由 KeyFun 给出,每个值都是给定 List 中的元素列表,其中 KeyFun 返回相同的键。

每个组列表中元素的顺序均保留在原始列表中。

例子:

> EvenOdd = fun(X) -> case X rem 2 of 0 -> even; 1 -> odd end end,
maps:groups_from_list(EvenOdd, [1, 2, 3]).
#{even => [2], odd => [1, 3]}
> maps:groups_from_list(fun erlang:length/1, ["ant", "buffalo", "cat", "dingo"]).
#{3 => ["ant", "cat"], 5 => ["dingo"], 7 => ["buffalo"]}

相关用法


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