Mit Rekursion wie kann ich die lokale variable aktualisiert

Mit Rekursion wie kann ich die lokale variable aktualisiert, bis eine Bedingung erfüllt ist. Ich habe ein Beispiel unten, die erklärt, warum die Frage sehr gut. Die count-variable ist eine lokale variable und sehr Zeit die Methode geht durch die Zählung auf 0 gesetzt ist. Ich kann mich nicht bewegen die Zählung außerhalb der Methode hat es sich um eine lokale variable nicht statisch ist, oder irgendetwas anderes.. Die gewünschte Ausgabe sein soll (3 von 6)

public static int returnInt(int b) {

        int count = 0;

        if (b == 6) {

            System.out.println(count + " " + b);
        }

        b += 2;
        count++;

        return returnInt(b);

    }
  • Warum sind Sie nicht erlaubt, etwas zu ändern?
  • Nicht count nur int count == b / 2;? Ansonsten müssen Sie passieren die count Variablen der rekursiven Funktion als gut.
  • Dir ist schon klar, dass returnInt nie, in der Tat, etwas zurückzugeben, richtig? 🙂 Weil es wird nicht aufhören, bis er stürzt mit einem stack-überlauf. (Rekursive algorithmen muss haben eine get-out-Klausel.)
InformationsquelleAutor user647207 | 2011-11-01
Schreibe einen Kommentar