Menu
CoddyTech

Istruzione match

Fa parte della sezione Fondamenti del percorso GDScript di Coddy. Lezione 30 di 92.

L'istruzione match confronta un valore con un elenco di pattern ed esegue il blocco del primo pattern corrispondente. Sostituisce una lunga catena di if/elif che confronta la stessa variabile:

var day := 3
match day:
	1:
		print("Monday")
	2, 3:
		print("Midweek")
	_:
		print("Other day")

Questo stampa Midweek.

  • Ogni pattern termina con due punti e il relativo codice è indentato di un livello in più
  • Più valori separati da virgole condividono un blocco: 2, 3:
  • _ è il carattere jolly: corrisponde a qualsiasi valore, quindi va per ultimo, come else

Viene eseguito solo il primo blocco corrispondente. GDScript non passa al pattern successivo, quindi non c’è alcun break da scrivere. Se nessun pattern corrisponde e non c’è _, non viene eseguito nulla.

Anche gli schemi possono essere stringhe:

var weapon := "bow"
match weapon:
	"sword":
		print("Melee")
	"bow", "crossbow":
		print("Ranged")
	_:
		print("Unknown")
challenge icon

Sfida

Facile

La variabile season contiene il nome di una stagione. Scrivi un'istruzione match che stampi un'attività per essa:

  • "Spring": stampa Go hiking
  • "Summer": stampa Go swimming
  • "Fall" o "Autumn": stampa Go apple picking (un unico schema con entrambi i valori)
  • "Winter": stampa Go skiing
  • Qualsiasi altro valore: stampa Stay home

Scrivi tutti i casi. Con season impostata su "Autumn", l'output è:

Go apple picking

Provalo tu

extends Node

func _ready():
	var season := "Autumn"
	# Scrivi la tua istruzione match qui sotto
	pass
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore GDScript online