Fonctions récursives Scala

Scala 函数Fonctions Scala

Les fonctions récursives jouent un rôle important dans les langages de programmation fonctionnelle.

Scala prend également en charge les fonctions récursives.

Une fonction récursive signifie qu'une fonction peut s'appeler elle-même.

L'exemple ci-dessus utilise une fonction récursive pour calculer la 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)
   }
}

L'exécution du code ci-dessus produit la sortie suivante :

$ 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

Scala 函数Fonctions Scala

Autres extensions