到目前为止,我只能找到3种方法。
第一的, if-then-else
二、模式匹配
第三,使用|
. 我不知道这叫什么。
有没有其他方法可以在 Haskell 中呈现if else语句?
您可以使用Church-encoded Booleans:
Prelude> true = \t f -> t
Prelude> false = \t f -> f
Prelude> iff = id
Prelude> iff true "foo" "bar"
"foo"
Prelude> iff false 42 1337
1337
该iff
函数的工作方式类似于if..then..else
表达式,使您可以在两个值之间进行选择,例如"foo"
and"bar"
或42
and 1337
。植根于 lambda 演算,这本质上是逻辑分支的基础。有关更多详细信息,请参阅链接的文章。
我不知道你为什么要这样做,但你可以......
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句