Tablice typowane
Część sekcji Podstawy ścieżki GDScript w Coddy. Lekcja 68 z 92.
Zwykła tablica akceptuje wartości dowolnego typu. Tablica typowana akceptuje tylko jeden typ, zapisany w nawiasach kwadratowych po Array:
var scores: Array[int] = [90, 85, 77]
var players: Array[String] = ["Ana", "Ben"]
var bonuses: Array[int] = []GDScript sprawdza każdą wartość. Wartość niewłaściwego typu w nawiasach jest zgłaszana przed uruchomieniem programu:
var scores: Array[int] = [90, "high"] # Błąd: "high" nie jest typu intDodanie wartości niewłaściwego typu podczas działania programu również powoduje błąd, a wartość nie zostaje dodana:
var scores: Array[int] = [90, 85]
var bonus = "ten"
scores.append(bonus) # Błąd, scores pozostaje [90, 85]Wnioskowanie o typie za pomocą := nie tworzy typowanej tablicy: var scores := [90, 85] to zwykła Array. Aby uzyskać typowaną tablicę, napisz Array[int].
Ponieważ tablica typowana zna typ swoich elementów, var best := scores[0] wywnioskuje typ int. W przypadku zwykłej tablicy ta sama linia powoduje błąd, ponieważ jej elementy mogą być dowolnego typu.
Tablice typowane mają takie same indeksy i metody jak zwykłe tablice, a print(scores) wyświetla je w ten sam sposób: [90, 85].
Wyzwanie
ŁatwyProgram odczytuje z wejścia liczbę, a następnie tyle wyników, po jednym w każdym wierszu.
- Zadeklaruj
scoresjako pustą typowaną tablicę liczb całkowitych - Odczytaj każdy wynik, przekonwertuj go za pomocą
int()i dodaj doscores - Wypisz
scores, a następnieBest:i najwyższy wynik
Dla poniższych danych wejściowych wynik to:
3
70
95
88[70, 95, 88]
Best: 95Spróbuj swoich sił
extends Node
func _ready():
var count := int(OS.read_string_from_stdin())
# 1. Zadeklaruj scores jako pustą tablicę typowaną zawierającą wartości int
# 2. Wczytaj count wyników i dodaj każdy z nich do tablicy
# 3. Wypisz scores, następnie "Best: " i najwyższy wynik
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneDzielenie całkowiteOperator moduloSkrócone operatory arytmetycznePodsumowanie — prosta matematykaOperatory porównania7Podstawowe wejście/wyjście
WyjścieWyjście ze zmiennymiFormatowanie ciągów znakówWejścieRzutowanie typówPowtórka — do 120Powtórka — prawda czy fałsz10Funkcje
Deklarowanie funkcjiArgumentyZwracanie wartościTypy zwracanych wartościPowtórka — funkcja sigmaPowtórka — funkcja walidującaWartości domyślne5Operatory — część 2
Operatory logiczne — część 1Operatory logiczne — część 2Powtórka — podstawy logikiOperatory logiczne — część 3Operator warunkowy8Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych14Zaawansowane tablice
Wycinanie fragmentów tablicyOperatory sekwencjiPrzynależnośćSortowanie i odwracanie3Zmienne, część 2
Deklarowanie typówWnioskowanie o typachStałePowtórka — inicjalizacja zmiennychKonwersja typów6Podejmowanie decyzji
Instrukcja ifIf - elsePowtórka – prosty kalkulatorZagnieżdżone if - elseInstrukcja match9Pętle
Pętla forPętla whilePrzerwijKontynuujPowtórka — silniaFunkcja rangePętla zagnieżdżonaPowtórka — dane wejściowe dynamicznePoćwicz samodzielnie: Kompilator GDScript online