die Rolle von "return" in der Methode

  • :omg: .... ich finde diesen Smiley echt cool :D

    hab versucht herauszufinden, welche Funktion das Schlüsselwort "return" hat aber hab leider nichts gefunden :confused:
    Warum reicht System.out.println() nicht aus??




    // javac Umtausch.java
    // java Umtausch
    // Vorher: a=2 und b= 3
    // Umgetauscht: a=3 und b= 2

    Danke :thumb:
    ciao :zwinker:

  • das return hier ist völlig überflüssig. du gibst ja sowieso keinen wert zurück, die methode hat das schlüsselwort void. ;)

    Otto: Apes don't read philosophy. - Wanda: Yes they do, Otto, they just don't understand
    Beleidigungen sind Argumente jener, die über keine Argumente verfügen.
    «Signanz braucht keine Worte.» | «Signanz gibts nur im Traum.» 

    Das neue MTB-Projekt (PO, Wiki, Mitschriften, Ausarbeitungen, Folien, ...) ist online
    http://mtb-projekt.at

  • Mit "return" springst du aus einer Funktion B wieder zu deiner Funktion A, welche die Funktion B aufgerufen hat. Intern läuft das so ab:

    void a()
    {
    int wert = b();
    }

    int b()
    {
    return 1;
    }

    Die Funktion A steht irgendwo in deinem Speicher. Nun rufst du die Funktion B auf. Die Adresse auf der du dich gerade befindest wird in einem Stack gespeichert. Jetzt bist du wo ganz anders im Speicher, wo die Funktion B steht. Diese wird durchgeführt, bis return kommt. Dann wird die zuletzt im Stack gespeicherte Adresse wieder ausgelesen und dorthin gesprungen. Das war in unserem Fall die Adresse der Funktion A. So in etwa Funktionierts. Du kannst auch Werte zurückgeben. In diesem Fall gibt B eine integer Variable mit dem Wert 1 zurück. void heißt, dass kein Wert aus dieser Funktion zurückgegeben wird. Braucht man ja nicht immer.


    mfg

    640K ought to be enough for anybody. :eek2:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!