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


erlang fold(Fun, Acc0, Q :: queue(Item))用法及代码示例


fold(Fun, Acc0, Q :: queue(Item)) -> Acc1
OTP 24.0
类型:
Fun = fun((Item, AccIn) -> AccOut)
Acc0 = Acc1 = AccIn = AccOut = term()

AccIn == Acc0 开始,对 Queue 的连续项 Item 调用 Fun(Item, AccIn) 。队列是按照队列顺序遍历的,即从前到后。 Fun/2 必须返回一个新的累加器,该累加器将传递给下一个调用。该函数返回累加器的最终值。如果队列为空,则返回Acc0

例子:

1> queue:fold(fun(X, Sum) -> X + Sum end, 0, queue:from_list([1,2,3,4,5])).
15
2> queue:fold(fun(X, Prod) -> X * Prod end, 1, queue:from_list([1,2,3,4,5])).
120

相关用法


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