Menu
CoddyTech

match 문

Coddy GDScript 여정의 기초 섹션에 포함된 레슨. 92개 중 30번째.

match 문은 하나의 값을 패턴 목록과 비교하고, 일치하는 첫 번째 패턴의 블록을 실행합니다. 같은 변수를 비교하는 긴 if/elif 연쇄를 대체합니다:

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

이것은 Midweek를 출력합니다.

  • 각 패턴은 콜론으로 끝나며, 해당 코드의 들여쓰기는 한 단계 더 깊습니다
  • 쉼표로 구분된 여러 값은 하나의 블록을 공유합니다: 2, 3:
  • _는 와일드카드입니다. 모든 값과 일치하므로 else처럼 마지막에 옵니다

첫 번째로 일치하는 블록만 실행됩니다. GDScript는 다음 패턴으로 넘어가지 않으므로 작성해야 할 break가 없습니다. 일치하는 패턴이 없고 _도 없으면 아무것도 실행되지 않습니다.

패턴은 문자열일 수도 있습니다:

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

챌린지

쉬움

변수 season에는 계절 이름이 들어 있습니다. 해당 계절에 맞는 활동을 출력하는 match 문을 작성하세요:

  • "Spring": Go hiking 출력
  • "Summer": Go swimming 출력
  • "Fall" 또는 "Autumn": Go apple picking 출력 (두 값을 모두 포함하는 하나의 패턴)
  • "Winter": Go skiing 출력
  • 그 밖의 값: Stay home 출력

모든 경우를 작성하세요. season이 "Autumn"으로 설정된 경우 출력은 다음과 같습니다:

Go apple picking

직접 해보기

extends Node

func _ready():
	var season := "Autumn"
	# 아래에 match 문을 작성하세요
	pass
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: 온라인 GDScript 컴파일러