Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Rückgabewerte von Funktionen | Funktionen
Einführung in Golang
course content

Kursinhalt

Einführung in Golang

Einführung in Golang

1. Erste Schritte
2. Datentypen
3. Kontrollstrukturen
4. Funktionen
5. Arrays und Slices
6. Einführung in Strukturen & Maps

book
Rückgabewerte von Funktionen

Daten in Funktionen übergeben zu können, ist wertvoll, aber es ist ebenso vorteilhaft, Daten aus Funktionen abzurufen. Hier wird das return-Schlüsselwort wesentlich.

Das return-Schlüsselwort ermöglicht es Funktionen, Daten an den Punkt im Code zurückzusenden, an dem sie aufgerufen wurden. Hier ist die Syntax für eine Funktion mit einer return-Anweisung:

Das data_to_be_returned ist der Ort, an dem wir einen Ausdruck oder einen Wert angeben. Das returned_datatype repräsentiert den erwarteten Datentyp für den Wert, der zurückgegeben wird. Dies wird durch ein Beispiel klarer.

Das folgende Programm veranschaulicht die Implementierung einer return-Anweisung über eine Funktion, die sowohl die Summe als auch das Produkt von zwei gegebenen Ganzzahlargumenten berechnet und zurückgibt:

go

index

copy
1234567891011121314
package main import "fmt" func myFunc(value_1 int, value_2 int) int { var sum int = value_1 + value_2 var prod int = value_1 * value_2 var result int = sum + prod return result } func main() { fmt.Println(myFunc(5, 7)) }

Bitte beachten Sie, dass wir innerhalb der Println-Funktion myFunc(5, 7) haben und das obige Programm die Ausgabe 47 erzeugt, die aus den Berechnungen der myFunc()-Funktion resultiert. Dies zeigt, dass die return-Anweisung spezifische Daten an die Stelle zurückgibt, an der die Funktion aufgerufen wurde. Zusätzlich können wir die zurückgegebenen Daten in einer Variablen speichern:

go

index

copy
12
var returnedValue int = myFunc(5, 7) fmt.Println(returnedValue) // Outputs '47'

Hinweis

Eine Funktion benötigt keine Parameter, um eine return-Anweisung einzuschließen.

Eine Funktion kann keinen Code nach einer return-Anweisung enthalten, und typischerweise erlaubt Go keine mehrfachen return-Anweisungen:

go

index

copy
1234567891011
// Function exits after the first return statement it encounters func exampleOne() int { return 1 return 2 // Will be ignored } // There cannot be any code after a return statement func exampleTwo() int { return 1 fmt.Println() // Error here }

Nichtsdestotrotz ist es möglich, die return-Anweisung innerhalb von bedingten Strukturen zu verwenden, um selektiv Werte zurückzugeben:

go

index

copy
123456789101112131415
package main import "fmt" func myFunc() string { if(1 > 2) { return "1 is greater than 2" } else { return "2 is greater than 1" } } func main() { fmt.Println(myFunc()) }
Was wird die Ausgabe des folgenden Programms sein?

Was wird die Ausgabe des folgenden Programms sein?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 4
We're sorry to hear that something went wrong. What happened?
some-alt