Eine Funktion deklarieren
Teil des Abschnitts Grundlagen der GO-Journey von Coddy — Lektion 52 von 109.
Lass uns lernen, wie man in Go eine Funktion deklariert, die mehrere Parameter desselben Typs übernimmt.
Zuerst erstellen wir eine Funktion, die drei Ganzzahlen addiert:
func addThree(x, y, z int) int {
return x + y + z
}
func main() {
sum := addThree(5, 10, 15)
fmt.Println("The sum is:", sum)
}Nach der Ausführung dieses Codes wird der Wert 30 (welcher 5 + 10 + 15 ist) berechnet und in der Variable sum gespeichert. Anschließend wird die Nachricht "The sum is: 30" auf dem Bildschirm angezeigt:
The sum is: 30Beachten Sie, dass wir x, y, z int geschrieben haben, anstatt x int, y int, z int zu schreiben. Dies ist eine hilfreiche Kurzschreibweise in Go, wenn mehrere Parameter denselben Typ teilen – es macht unseren Code kürzer und sauberer.
Aufgabe
AnfängerIn dieser Challenge wirst du das Deklarieren einer Funktion in Go üben. Deine Aufgabe ist es, die greet-Funktion zu vervollständigen, die einen Namen als Parameter entgegennimmt und eine Begrüßungsnachricht zurückgibt.
Die Funktion sollte einen String im Format "Hello, [name]!" zurückgeben.
Spickzettel
Wenn mehrere Parameter in Go denselben Typ teilen, können Sie die Kurzschreibweise verwenden:
func addThree(x, y, z int) int {
return x + y + z
}Dies entspricht dem Schreiben von x int, y int, z int, ist aber prägnanter.
Probier es selbst
package main
import "fmt"
// TODO: Vervollständige die greet-Funktion, die einen name-Parameter entgegennimmt
// und einen Begrüßungs-String zurückgibt
// func greet() {
//
// }
func main() {
// Diese Testfälle sind bereits für dich vorbereitet
name1 := "Alice"
name2 := "Bob"
// Testen der greet-Funktion
message1 := greet(name1)
message2 := greet(name2)
fmt.Println(message1)
fmt.Println(message2)
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Vergleichs- & logische Operatoren
Vergleichsoperatoren - Teil 1Vergleichsoperatoren - Teil 2Logischer UND-OperatorLogischer ODER-OperatorLogischer NICHT-OperatorGrundlagen der OperatorrangfolgeZusammenfassung - Vergleiche anstellen7Kontrollfluss: Schleifen
Die `for`-Schleife erklärtfor-Schleife - Grundlagenfor-Schleife - Nur BedingungDas `break`-SchlüsselwortDas `continue`-SchlüsselwortVerschachtelte SchleifenZusammenfassung - Aktionen wiederholen2Variablen und grundlegende Datentypen
Was ist eine VariableTypinferenz mit `:=`Ganzzahlen (int)GleitkommazahlenBoolesche WerteStringsZero ValuesKonstantenNamenskonventionenZusammenfassung - Variablen und Typen5Grundlagen der Ein- und Ausgabe
Formatierte AusgabeFormat-VerbenTypen ausgebenEinfache Benutzereingaben erhaltenZusammenfassung – Ein- und Ausgabe8Funktionen
Funktionen verstehenEine Funktion deklarierenFunktionen aufrufenFunktionsparameterEinen einzelnen Wert zurückgebenMehrere Werte zurückgebenBenannte RückgabewerteGrundlagen des Funktions-ScopesZusammenfassung – Wiederverwendbaren Code erstellen3Grundlegende Operatoren
Arithmetische OperatorenDivisionsoperatorDer Modulo-OperatorZuweisungsoperatorKombinierte ZuweisungsoperatorenInkrement und DekrementZusammenfassung - Berechnungen6Kontrollfluss: Bedingte Anweisungen
Die `if`-AnweisungDas `else`-SchlüsselwortDas `else if`-SchlüsselwortVariable Shadowing in `if`Variablen initialisierenDie `switch`-AnweisungSwitch mit AusdrückenSwitch ohne AusdruckDas `fallthrough`-SchlüsselwortZusammenfassung – Entscheidungen treffen9Zeiger
Was ist ein Zeiger?Deklarieren von ZeigervariablenDer AdressoperatorDereferenzieren von ZeigernVerwendung von Zeigern in FunktionenNil-ZeigerZusammenfassung – Zeiger verstehen12Zusammengesetzte Typen: Maps
Einführung in MapsDeklarieren von Map-LiteralenErstellen von Maps mit `make`Hinzufügen und Aktualisieren von Key-Value-PaarenZugriff auf Map-WerteÜberprüfen der Existenz von SchlüsselnLöschen von Map-EinträgenMap-LängeIterieren über MapsZusammenfassung – Key-Value-Speicher