Connaissances Informatiques >> programmation >> Programmation Java >> Content
  Derniers articles
  • Traversant par une variable de chaî…
  • Comment faire pour utiliser Java dan…
  • Comment apprendre Java de base 
  • Comment insérer un élément dans u…
  • Comment faire pour établir une nouv…
  • Comment faire une pyramide des nombr…
  • Comment exécuter JSP dans iFrame 
  • Java API image Tutorial 
  • Comment savoir Scala 
  • Comment ajouter INT en une chaîne e…
  •   Programmation Java
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Programmation Java

    Problèmes de récursion dans Java

    Dans un programme Java, une méthode récursive est une méthode qui s'appelle elle-même . Méthodes récursives peuvent aider les programmeurs à concevoir un extrait de code pour simplifier un problème. Méthodes récursives aussi semblent souvent être concise , mais la création d'une fonction récursive efficace peut être très difficile . Comme pour les boucles et autres structures de contrôle en Java , les développeurs doivent travailler à travers ce qui va se passer quand une fonction récursive exécute . Méthodes récursives provoquent un ensemble de problèmes communs quand il n'est pas correctement structuré . Résolution de problèmes échec

    Les programmeurs utilisent des méthodes récursives pour résoudre des problèmes particuliers. Naturellement, une méthode récursive ne fournira pas de fonctionnalité utile si elle ne résout pas le problème, il a été conçu. Cela arrive parfois lorsque le programmeur a choisi d'utiliser une fonction récursive où il n'est pas approprié . En règle générale, une méthode récursive est idéal pour les situations dans lesquelles vous avez besoin pour résoudre un problème en utilisant des étapes itératives . Chaque fois que l' exécution de la méthode , il convient de rendre le problème plus simple et apporter votre programme un peu plus à résoudre. Le résultat final de la méthode récursive devrait être la solution à votre problème , par exemple la localisation d'un élément dans un objet de collection de données.
    No End Case

    Pour une fonction récursive de travailler sans obtenir votre programme coincé dans une boucle infinie , elle doit avoir un cas de fin bien définie. Cela signifie qu'il doit y avoir une exécution finale , plutôt que la méthode d'exécution sans cesse . Les programmeurs mettent souvent en œuvre cette aide d'instructions conditionnelles à l'intérieur de la méthode , comme dans l'exemple suivant : public void doItRecursively (int num) {if (num <1 ) return; else { System.out.println ( num) ; doItRecursively (num /2) ;}}

    Pour appeler cette fonction , un programme peut utiliser le code suivant : doItRecursively (10);

    Dans ce cas, la fonction exécutera cinq fois , en sortant de la cinquième itération. Chaque fois que la méthode exécute se rapproche du scénario de fin, ce qui le conditionnel if vérifie pour . Si la méthode ne contient pas l'instruction conditionnelle , il serait parcourir sans cesse .
    Pas de récursion

    Le compteur question à une méthode itérative sans cesse en boucle est une méthode que n'itère pas du tout. Cela se produit également lorsque l'instruction conditionnelle n'est pas correctement structuré . Par exemple, compte tenu de la méthode " doItRecursively " , ce qui suit modifié si la déclaration poserait un problème : if ( nombre > 0 ) return;

    Si la méthode est appelée uniquement avec des valeurs entières positives que le paramètre, l' le contenu ne sera jamais répéter que le point final aura été atteint tout de suite .
    méthode incorrecte appels

    Si le programmeur d'appeler une méthode récursive n'a pas une compréhension claire de sa fonction , ils peuvent l'utiliser d'une manière qui provoque itération sans fin ou sans itération. Par exemple, le code conditionnel modifié suivant dans la méthode pourrait facilement être appelé à tort : if ( num <0 ) return;

    Si la méthode est appelée uniquement avec les valeurs des paramètres entiers positifs , il n'atteindra jamais ce point final et va provoquer une boucle infinie. Méthodes récursives peuvent causer beaucoup des mêmes écueils que les boucles , de sorte qu'ils ne nécessitent pratique pour la mise en œuvre effective .

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment faire un jeu Java Swing 
  • Comment envoyer un e-mail automatique après une date déterminée JSP 
  • Comment déplacer un JPanel Java 
  • Comment faire pour exécuter les servlets Java 
  • Comment obtenir un nombre de rotations en Java 
  • Comment télécharger des fichiers avec Struts 
  • Java et Vérifier l'orthographe 
  • Les façons de nommer les regroupements de ressources en Java 
  • Comment se déplacer tableaux en Java 
  • Comment savoir si un nombre est premier en Java qui retourne un booléen 
  • Connaissances Informatiques © http://www.ordinateur.cc