Rückgabewert von Methoden in Java

Was ist ein Rückgabewert (engl. return) einer Methode in Java und wofür wird dieser verwendet? Ein Rückgabewert ist das Ergebnis, das eine Methode an deren Aufrufer zurückgibt. Dabei kann der Aufrufer selbst wieder eine Methode sein. Liefert eine Methode kein Ergebnis, so ist sie als void deklariert.

Schlüsselwort return

Mit dem Schlüsselwort return wird die derzeit bearbeitete Methode beendet und ein Rückgabewert an den Aufrufer übergeben. Dabei können verschiedenste Datentypen als Rückgabewerte verwendet werden. Gängig ist die Verwendung folgender Rückgabewerte:

  • Integer
  • String
  • Double
  • Float

Neben diesen allgemeinen und teil primitiven Datentypen können auch Objekte zurückgegeben werden.

Ob eine Methode einen Rückgabewert zurückgibt oder ob diese als void definiert ist, muss bereits in der Signatur der Methode angegeben werden.

Nach einer return-Anweisung dürfen keine weiteren Anweisungen folgen. Wenn die return-Anweisung in einer void-Methode benutzt wird, darf kein Ausdruck in der return-Anweisung erscheinen. Dieses Konstrukt wird z.B. Verwendet um eine Methode in einer if-Verzweigung vorzeitig abzubrechen.

Beispiel mit Integer

public class Programm {

    public static void main(String[] args) {
        System.out.println(callMe(3));
    }

    public static int callMe(int x) {
        return x + 5;
    }
}

Die Ausgabe lautet 8.

Beispiel mit String

public class Programm {

    public static void main(String[] args) {
        System.out.println(sayMyName("Max", "Mustermann"));
    }

    public static String sayMyName(String Vorname, String Nachname) {
        return Vorname + " " + Nachname;
    }
}

Die Ausgabe lautet nun Max Mustermann.

Return zum Vorzeitigen Abbruch einer Methode

public class Programm {

    public static void main(String[] args) {
        checkValue(3);
        checkValue(27);
    }

    public static void checkValue(int x) {
        if (x != 27) {
            return;
            // Ab hier sind keine weitern Anweisungen zulässig
        }
        else {
            System.out.println(x + " ist die richtige Zahl!");
        }
    }
}

Es wird einmal 27 ist die richtige Zahl ausgegeben.

Schreibe einen Kommentar