【发布时间】:2016-09-30 01:07:16
【问题描述】:
在 Elm 中,有没有办法将函数的参数与 Haskell 中的多个定义进行模式匹配?
来自 Haskell 的示例:
factorial :: Int ->
factorial 0 = 1
factorial n = n * factorial (n - 1)
【问题讨论】:
标签: functional-programming pattern-matching elm
在 Elm 中,有没有办法将函数的参数与 Haskell 中的多个定义进行模式匹配?
来自 Haskell 的示例:
factorial :: Int ->
factorial 0 = 1
factorial n = n * factorial (n - 1)
【问题讨论】:
标签: functional-programming pattern-matching elm
Elm 中没有类似的语法。
实现类似行为的最简单方法是使用case 语句的模式匹配。
请考虑以下示例:
factorial : Int -> Int
factorial n =
case n of
0 ->
1
_ ->
n * factorial (n - 1)
上面示例中的_ 用作通配符来匹配任何模式,在这种情况下,它是与0 不同的任何整数
【讨论】: