Tablice typowane
Część sekcji Wprowadzenie do Luau ścieżki Lua w Coddy. Lekcja 13 z 73.
Tablice typowane to jedna z najbardziej przydatnych funkcji Luau, która pozwala porządkować wiele wartości przy zachowaniu bezpieczeństwa typów.
W Lua tablica to po prostu tabela z wartościami na pozycjach 1, 2, 3, …, która bez problemu może jednocześnie zawierać liczbę, ciąg znaków i wartość logiczną. Luau pozwala zadeklarować, że tabela powinna zawierać elementy tylko jednego typu, używając składni {Type}:
local numbers: {number} = {1, 2, 3, 4, 5}
local names: {string} = {"Alice", "Bob", "Charlie"}
local flags: {boolean} = {true, false, true}Gdy deklarujesz tablicę typowaną, narzędzie do sprawdzania typów w Luau pilnuje, by trafiały do niej tylko wartości zadeklarowanego typu. Wstaw ciąg znaków do tablicy {number}, a podczas edycji, zanim kod w ogóle zostanie uruchomiony, pojawi się błąd typu:
local scores: {number} = {85, 90, 78}
table.insert(scores, "oops") -- ✗ błąd typu: string nie jest liczbąWszystko, co już wiesz o tabelach Lua, nadal ma zastosowanie: tablice są indeksowane od 1 (scores[1] to pierwszy element), #scores oznacza długość, a table.insert / table.remove działają jak zwykle. Adnotacja zwiększa bezpieczeństwo, nie zmieniając zachowania podczas działania programu.
Wyzwanie
ŁatwyUtwórz typowaną tablicę o nazwie scores, która może zawierać tylko liczby, zainicjalizowaną wartościami 85, 92 i 78.
Utwórz drugą typowaną tablicę o nazwie studentNames, która może zawierać tylko ciągi znaków, zainicjalizowaną wartościami "Alice", "Bob" i "Charlie".
Następnie wypisz, każdą wartość w osobnym wierszu:
- pierwszy wynik
- ile jest wyników (użyj
#) - imię i nazwisko drugiego ucznia
Spróbuj swoich sił
-- Napisz tutaj kod
-- 1) zadeklaruj scores: {number} i studentNames: {string}
-- 2) wypisz pierwszy wynik, liczbę elementów w scores i drugie imię
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Wprowadzenie do Luau
1Pierwsze kroki z Luau
Czym jest Luau?Dlaczego warto używać Luau?Twój pierwszy kod w LuauSprawdzanie typów i tryby błędówPodsumowanie: Wprowadzenie do Luau4Praca z funkcjami
Typowanie parametrów i wartości zwracanychTypowanie funkcji anonimowychFunkcje niczego nie zwracająceParametry opcjonalneDomyślne wartości parametrówFunkcje wariadyczneDefiniowanie typów funkcjiPodsumowanie: funkcje z typami2Typy podstawowe
Typy podstawowe: num, str, boolTyp „any”: furtka awaryjnaTyp „unknown”Typy Nil i opcjonalneInferencja typów w praktyceJawne adnotacje typówPowtórka: ćwiczenie typów podstawowych5Aliasy, typy sumy i przekroju
Aliasy typów dla typów prostychTypy sumyPraca z typami sumyTypy literałoweTypy przekrojuŁączenie aliasów typówPodsumowanie: zaawansowane kombinacje typów3Typowane tabele: tablice i mapy
Tablice typowaneDodawanie i odczytywanie elementówCzym jest typ mapy?Deklarowanie map i dostęp do nichIterowanie po tabelachTabele o mieszanej strukturzeWielowymiarowe tablice typowanetable.unpack i varargsPodsumowanie: tablice i mapyPoćwicz samodzielnie: Kompilator Luau online