當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。