Die Syntax der Rückgabeanweisung
Einleitendes Beispiel
Das folgende Programmbeispiel zeigt verschiedene Verwendungen einer Rückgabeanweisung, die leicht daran erkannt werden kann, daß sie mit dem Schlüsselwort »return« beginnt und mit einem Semikolon »;« endet. Zwischen dem »return« und dem Semikolon »;« kann noch ein Ausdruck stehen.
Das folgende Programm enthält jeweils ein Beispiel für die Deklaration einer int-Methode, einer double-Methode, einer java.lang.String-Methode und einer void-Methode. Die Aufrufe dieser Methoden im Hauptprogramm haben jeweils den entsprechenden Typ.
Der Wert der Aufrufe der Methoden ist der in den Rückgabetyp gewandelte Wert des Ausdrucks, der sich in der Deklaration der aufgerufenen Methode hinter »return« befindet. (Bei einer void-Methode gibt es keinen Wert des Aufrufs.)
Main.java
public final class Main
{public static int sieben(){ return 7; }
public static double drei(){ return 3.0; }
public static java.lang.String abc(){ return "abc"; }
public static void main( final java.lang.String[] args )
{ final java.lang.String ln = java.lang.System.lineSeparator();
java.lang.System.out.println( sieben() + ln + drei() + ln + abc() ); }}Protokoll
7
3.0
abc
Den Ausdruck zwischen »return« und dem Semikolon »;« nennen wir auch den Rückgabeausdruck oder return-Ausdruck .
Einen vor dem Methodennamen in der Methodendeklaration angegebenen Datentyp nennen wir auch den Rückgabetyp der Methodendeklaration (beziehungsweise der deklarierten Methode ).
Die Rückgabeanweisung
Nach ihrem einleitenden Schlüsselwort return wird die Rückgabeanweisung auch return-Anweisung oder kurz „return “ genannt. Man sagt auch, daß diese Anweisung den Wert ihres Ausdrucks zurückgebe.
Die Syntax der Rückgabeanweisung
Die Syntax für die return-Anweisung (Rückgabeanweisung) lautet wie folgt.
- Syntaxdiagramm
Rueckgabeanweisung
.------. .----------. .-.
--->( return )--->| Ausdruck |--->( ; )--->
'------' '----------' '-'
Wir kennen nun die folgenden sechs Arten von Anweisungen.
- Anweisung
Anweisung
.--------------------------------------.
---.--->| Ausgabeanweisung |----.--->
| '--------------------------------------' |
| .--------------------------------------. |
'--->| Aufrufanweisung |----'
| '--------------------------------------' |
| .--------------------------------------. |
'--->| Zuweisungsanweisung |----'
| '--------------------------------------' |
| .--------------------------------------. |
'--->| Block |----'
| '--------------------------------------' |
| .--------------------------------------. |
'--->| Variablendeklarationsanweisung |----'
| '--------------------------------------' |
| .--------------------------------------. |
'--->| Rueckgabeanweisung |----'
'--------------------------------------'
Schlüsselwörter
»return« ist ein Schlüsselwort.
- Bisher behandelte Schlüsselwörter
- »double«, »final«, »int«, »long«, »public«, »return«, »static«, »void«
Übungsfragen ⃗
? Übungsfrage ⃗
- Syntaxdiagramm
Rueckgabeanweisung
.------. .----------. .-.
--->( return )--->| Ausdruck |--->( ; )--->
'------' '----------' '-'
Welcher der folgenden Texte ist eine Rückgabeanweisung?
- »return {};« (Anton)
- »return( 2 );« (Berta)
- »return 2;« (Cäsar)
- »return2;« (Heinrich)
- »return();« (Dora) →
- »return f( 2 );« (Friedrich) →
- »returnf( 2 );« (Gustav) →
- »return x x;« (Ida) →
- »return x;« (Julius) →
? Übungsfrage ⃗
Wie viele lexikalische Einheiten enthalten die folgenden Anweisungen?
- »return( 8 );« (Anton)
- »return 3;« (Berta) →
Übungsaufgaben ⃗
/ Übungsaufgabe ⃗
Schreiben Sie eine Rückgabeanweisung mit dem Ausdruck »2«.
- Syntaxdiagramm
Rueckgabeanweisung
.------. .----------. .-.
--->( return )--->| Ausdruck |--->( ; )--->
'------' '----------' '-'
Die Lösung sollte auf einer von Leerzeilen umgebenden Zeile für sich stehen.
»return« und Leerraum ⃗
Man beachte, daß nach »return« Leerraum nötig ist, wenn ein Name oder Numerale direkt folgt, weil das Schlüsselwort »return« sonst mit diesem zu einer lexikalischen Einheit verschmelzen würde.
- Eine lexikalische Einheit
returnx
- Zwei lexikalische Einheiten
return x
- Eine lexikalische Einheit
return7
- Zwei lexikalische Einheiten
return 7
Das Sonderzeichen nicht Teil eines Worts sein können, ist vor ihnen nicht unbedingt Leerraum nötig.
- Drei lexikalische Einheiten
return+7
- Vier lexikalische Einheiten
return( 7 )