Scala fonction récursive
fonction récursive joue un rôle important dans les langages de programmation fonctionnels.
Scala prend également en charge les fonctions récursives.
fonction récursive signifie que la fonction peut appeler lui-même.
L'exemple ci-dessus utilise une fonction récursive pour calculer factorielle:
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) } }
Mise en œuvre du code ci-dessus, la sortie est:
$ 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