Erlang,返回列表长度的函数?

mrj*_*joe 2 erlang

我正在尝试实现一个功能

llen(ListOfLists)
Run Code Online (Sandbox Code Playgroud)

它返回一个列表,其中包含ListOfLists中列表的长度.函数应该使用列表:map/2.

例:

1> funs:llen([[1, 2, 3], [], [4, 5]]).
[3, 0, 2]
Run Code Online (Sandbox Code Playgroud)

我知道如何计算一个列表的长度:

list([]) -> 0;
list([_|T]) -> 1+list(T).
Run Code Online (Sandbox Code Playgroud)

但我不知道如何使用乐趣和列表为多个列表执行此操作.

Emi*_*röm 5

lists:map/2是一个高阶函数,它为列表的每个元素应用一个函数.erlang:length/1是一个返回列表长度的函数.

使用以下方法应用于erlang:length/1列表的每个元素lists:map/2:

lists:map(fun erlang:length/1, [[1, 2, 3], [], [4, 5]])
Run Code Online (Sandbox Code Playgroud)