Haskell語言Prelude模塊中函數foldr的用法及代碼示例。
用法類型:
(a -> b -> b) -> b -> [a] -> b
它采用列表的第二個參數和最後一項,並應用該函數,然後采用末尾和結果中的倒數第二項,依此類推。看scanr以獲得中間結果。
示例1:
輸入:
foldr (+) 5 [1,2,3,4]
輸出:
15
示例2:
輸入:
foldr (/) 2 [8,12,24,4]
輸出:
8.0
示例3:
輸入:
foldr (/) 3 []
輸出:
3.0
示例4:
輸入:
foldr (&&) True [1>2,3>2,5==5]
輸出:
False
示例5:
輸入:
foldr max 18 [3,6,12,4,55,11]
輸出:
55
示例6:
輸入:
foldr max 111 [3,6,12,4,55,11]
輸出:
111
示例7:
輸入:
foldr (\x y -> (x+y)/2) 54 [12,4,10,6]
輸出:
12.0
相關用法
- haskell foldl用法及代碼示例
- haskell foldl1用法及代碼示例
- haskell foldr1用法及代碼示例
- haskell scanl用法及代碼示例
- haskell scanl1用法及代碼示例
- haskell scanr用法及代碼示例
- haskell scanr1用法及代碼示例
注:本文由純淨天空篩選整理自 haskell foldr。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。