funzione ricorsiva Scala
funzione ricorsiva svolge un ruolo importante nei linguaggi di programmazione funzionali.
Scala supporta anche funzioni ricorsive.
funzione ricorsiva significa che la funzione può chiamare se stesso.
L'esempio precedente utilizza una funzione ricorsiva per calcolare fattoriale:
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) } }
L'attuazione del codice di cui sopra, l'output è:
$ 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