Match-Anweisung
Teil des Abschnitts Grundlagen der GDScript-Journey von Coddy. Lektion 30 von 92.
Die match-Anweisung vergleicht einen Wert mit einer Liste von Mustern und führt den Block des ersten passenden Musters aus. Sie ersetzt eine lange if/elif-Kette, die dieselbe Variable vergleicht:
var day := 3
match day:
1:
print("Monday")
2, 3:
print("Midweek")
_:
print("Other day")Dies gibt Midweek aus.
- Jedes Muster endet mit einem Doppelpunkt, und sein Code ist eine Ebene tiefer eingerückt
- Mehrere durch Kommas getrennte Werte teilen sich einen Block:
2, 3: _ist der Platzhalter: Er passt zu jedem Wert und steht deshalb zuletzt, wieelse
Nur der erste passende Block wird ausgeführt. GDScript fällt nicht zum nächsten Muster durch, daher muss kein break geschrieben werden. Wenn kein Muster passt und es kein _ gibt, wird nichts ausgeführt.
Muster können auch Zeichenketten sein:
var weapon := "bow"
match weapon:
"sword":
print("Melee")
"bow", "crossbow":
print("Ranged")
_:
print("Unknown")Aufgabe
EinfachDie Variable season enthält den Namen einer Jahreszeit. Schreibe eine match-Anweisung, die eine passende Aktivität ausgibt:
"Spring": gibGo hikingaus"Summer": gibGo swimmingaus"Fall"oder"Autumn": gibGo apple pickingaus (ein Muster mit beiden Werten)"Winter": gibGo skiingaus- Jeder andere Wert: gib
Stay homeaus
Schreibe alle Fälle. Wenn season auf "Autumn" gesetzt ist, lautet die Ausgabe:
Go apple pickingProbier es selbst
extends Node
func _ready():
var season := "Autumn"
# Schreibe deine match-Anweisung unten
pass
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenGanzzahldivisionModulo-OperatorRechenabkürzungenRückblick – Einfache MathematikVergleichsoperatoren7Einfache Ein- und Ausgabe
AusgabeAusgabe mit VariablenString-FormatierungEingabeTypumwandlungWiederholung – bis 120Wiederholung – Wahr oder falsch10Funktionen
Eine Funktion deklarierenArgumenteRückgabewertRückgabetypenWiederholung – Sigma-FunktionWiederholung – ValidierungsfunktionStandardwerte5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – einfache LogikLogische Operatoren Teil 3Ternärer Operator8Rechnungsteiler
BegrüßungsnachrichtEingaben erfassen11FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Funktion3Variablen Teil 2
TypdeklarationTypinferenzKonstantenWiederholung – Variablen initialisierenTypumwandlung6Entscheidungen treffen
If-AnweisungIf - ElseWiederholung – einfacher TaschenrechnerVerschachteltes If - ElseMatch-Anweisung9Schleifen
For-SchleifeWhile-SchleifeBreakContinueWiederholung – FakultätDie Range-FunktionVerschachtelte SchleifeWiederholung – Dynamische EingabeÜbe selbstständig: Online-GDScript-Compiler