função recursiva Scala
função recursiva desempenha um papel importante em linguagens de programação funcionais.
Scala também suporta funções recursivas.
função recursiva significa que a função pode chamar a si mesma.
O exemplo acima usa uma função recursiva para calcular os fatores:
object Test { def main(args: Array[String]) { for (i <- 1 to 10) println(i + " 的阶乘为: = " + factorial(i) ) } def factorial(n: BigInt): BigInt = { if (n <= 1) 1 else n * factorial(n - 1) } }
Implementação do código acima, a saída é:
$ scalac Test.scala $ scala Test 1 的阶乘为: = 1 2 的阶乘为: = 2 3 的阶乘为: = 6 4 的阶乘为: = 24 5 的阶乘为: = 120 6 的阶乘为: = 720 7 的阶乘为: = 5040 8 的阶乘为: = 40320 9 的阶乘为: = 362880 10 的阶乘为: = 3628800