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


erlang foldr(Fun, Acc0, List)用法及代碼示例


foldr(Fun, Acc0, List) -> Acc1
類型:
Fun = fun((Elem :: T, AccIn) -> AccOut)
Acc0 = Acc1 = AccIn = AccOut = term()
List = [T]
T = term()

就像foldl/3,但列表是從右向左遍曆的。

例子:

> P = fun(A, AccIn) -> io:format("~p ", [A]), AccIn end.
#Fun<erl_eval.12.2225172>
> lists:foldl(P, void, [1,2,3]).
1 2 3 void
> lists:foldr(P, void, [1,2,3]).
3 2 1 void

foldl/3 是尾遞歸,通常優於 foldr/3

相關用法


注:本文由純淨天空篩選整理自erlang.org大神的英文原創作品 foldr(Fun, Acc0, List) -> Acc1。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。