Menu
CoddyTech

타입 배열

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

일반 배열은 모든 유형의 값을 허용합니다. 타입 배열은 한 가지 유형만 허용하며, Array 뒤에 대괄호로 표기합니다:

var scores: Array[int] = [90, 85, 77]
var players: Array[String] = ["Ana", "Ben"]
var bonuses: Array[int] = []

GDScript는 모든 값을 검사합니다. 대괄호 안에 잘못된 유형의 값이 있으면 프로그램이 실행되기 전에 오류가 보고됩니다:

var scores: Array[int] = [90, "high"]  # 오류: "high"는 int가 아닙니다

프로그램이 실행되는 동안 잘못된 유형의 값을 추가하는 것도 오류이며, 해당 값은 추가되지 않습니다:

var scores: Array[int] = [90, 85]
var bonus = "ten"
scores.append(bonus)  # 오류, scores는 [90, 85] 그대로 유지됨

:=를 사용한 형 추론은 형이 지정된 배열을 만들지 않습니다. var scores := [90, 85]는 일반 Array입니다. 형이 지정된 배열을 얻으려면 Array[int]라고 작성하세요.

형식이 지정된 배열은 요소의 유형을 알고 있으므로 var best := scores[0]는 int를 추론합니다. 일반 배열에서는 요소의 유형이 무엇이든 될 수 있으므로 같은 줄에서 오류가 발생합니다.

형식화 배열은 일반 배열과 동일한 인덱스와 메서드를 가지며, print(scores)는 이를 같은 방식으로 표시합니다: [90, 85].

challenge icon

챌린지

쉬움

프로그램은 입력에서 개수를 읽은 다음, 그만큼의 점수를 한 줄에 하나씩 읽습니다.

  1. scores를 비어 있는 정수형 배열로 선언합니다
  2. 각 점수를 읽고, int()로 변환한 다음 scores에 추가합니다
  3. scores를 출력한 다음, Best: 뒤에 가장 높은 점수를 출력합니다

아래 입력에 대한 출력은 다음과 같습니다:

3
70
95
88
[70, 95, 88]
Best: 95

직접 해보기

extends Node

func _ready():
	var count := int(OS.read_string_from_stdin())
	# 1. 빈 int 타입 배열인 scores를 선언합니다
	# 2. 점수 count개를 읽고 각각을 추가합니다
	# 3. scores를 출력한 다음 "Best: "와 최고 점수를 출력합니다
quiz icon실력 점검

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

기초의 모든 레슨

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