Cette écriture présente une compréhension profonde des concepts suivants liés à la récursivité Java:
Alors, commençons!
Qu'est-ce que la récursivité en Java
Habituellement, nous assistons à une fonction appelant une autre fonction ou fonction. Cependant, une fonction récursive s'appelle à plusieurs reprises. Les extraits divisés ci-dessous décrivent comment une méthode normale diffère d'une méthode récursive.
Syntaxe de base de la fonction normale
public void FirstFunction ()L'extrait ci-dessus montre à quoi ressemble une fonction définie par l'utilisateur normal i.e. Il a quelques instructions (code) et appelle une fonction nommée secondFunction ().
Syntaxe de base de la fonction récursive
Jetons maintenant un œil à l'extrait ci-dessous pour comprendre à quoi ressemble une fonction récursive:
public void FirstFunction ()Considérez la figure ci-dessous pour comprendre comment fonctionnera la fonction récursive ci-dessus:
La figure ci-dessus montre que la fonction s'appelle continuellement je.e. Un scénario de boucle infini se produit. Maintenant, vous devez vous demander si la fonction s'appelle continuellement, alors comment va-t-elle s'arrêter? Bien! Nous devons définir les critères de terminaison pour arrêter une telle fonction à un moment donné.
État d'arrêt / terminaison
Pour l'instant, il est clair qu'il doit y avoir une condition qui contrôlera le flux de la fonction récursive. En termes programmatiques, la condition qui arrête la fonction à appeler elle-même est appelée état d'arrêt ou cas de base.
La syntaxe de la fonction récursive avec la condition d'arrêt ressemblera à ceci:
public void functionname ()La condition d'arrêt peut être n'importe quelle condition en fonction des différentes circonstances.
Exemples de récursivité Java
Cette section fournira une compréhension détaillée du fonctionnement de la fonction récursive avec le cas de base en Java.
Exemple
L'extrait sous-donné prend un numéro de l'utilisateur et trouve le factoriel de ce numéro:
classe publique FactorialClassDans l'extrait de code ci-dessus, la condition IF-Else est utilisée pour arrêter la récursivité lorsque «num» devient égal à «0».
public static void main (String [] args)Dans la méthode principale, nous récupérons le numéro de l'utilisateur, vérifiant que le nombre est valide ou non, et si le numéro est valide, appelez le findfactorial () méthode. L'ensemble du code générera la sortie suivante:
La sortie authentifie la fonction récursive fonctionne correctement et il a calculé correctement le factoriel de 6.
Conclusion
En Java, un processus dans lequel une fonction s'appelle encore et encore, s'appelle un fonction / méthode récursive Alors que l'ensemble du processus est connu comme récursivité. Un boîtier de base / halting doit être défini dans les fonctions récursives pour arrêter la récursivité à un moment donné, sinon la fonction ne s'arrêtera jamais et ne s'appelle pas un nombre illimité de fois. Cette écriture élabore ce qui est la récursivité, la différence entre la fonction normale et récursive, et comment créer des fonctions récursives en java.