📅  最后修改于: 2020-11-04 06:59:01             🧑  作者: Mango
函数组合是将一个函数的输出用作另一个函数的输入的过程。如果我们学习作文背后的数学会更好。在数学中,合成用f {g(x)}表示,其中g()是一个函数,其输出用作另一个函数f()的输入。
如果一个函数的输出类型与第二个函数的输入类型相匹配,则可以使用任何两个功能来实现功能组合。我们使用点运算符(。)在Haskell中实现函数组合。
看下面的示例代码。在这里,我们使用函数组合来计算输入数字是偶数还是奇数。
eveno :: Int -> Bool
noto :: Bool -> String
eveno x = if x `rem` 2 == 0
then True
else False
noto x = if x == True
then "This is an even Number"
else "This is an ODD number"
main = do
putStrLn "Example of Haskell Function composition"
print ((noto.eveno)(16))
在这里,在主函数中,我们调用两个函数,诺托,eveno,同时。编译器将首先以16作为参数调用函数“ eveno()” 。此后,编译器将使用eveno方法的输出作为noto ()方法的输入。
其输出如下-
Example of Haskell Function composition
"This is an even Number"
由于我们是供给作为输入16的数量(其是偶数),则eveno()函数返回真,这成为能登()函数和返回输出的输入:“这是一个偶数”。