lists:map/2
列表里的每一个元素被函数调用
用法:
map(Fun, List1) -> List2
内部实现:
-spec map(Fun, List1) -> List2 when Fun :: fun((A) -> B), List1 :: [A], List2 :: [B], A :: term(), B :: term(). map(F, [H|T]) -> [F(H)|map(F, T)]; map(F, []) when is_function(F, 1) -> [].
跟 lists:foreach/2 一样,都是列表 List 里的每一个元素按从左向右的顺序被函数 Fun 调用,不同的是,每次函数 Fun 执行的结果将保留,并组成一个列表返回。
lists:map(fun(E) -> E * E end, [1, 2, 3, 4, 5]).