Menu
Coddy logo textTech

Deklarowanie map i dostęp do nich

Część sekcji Wprowadzenie do Luau ścieżki Lua w Coddy. Lekcja 16 z 73.

Deklarowanie typowanej mapy wygląda tak jak konstruktory tabel, które zawsze pisałeś: adnotacja określa jedynie typy kluczy i wartości:

local stock: {[string]: number} = {apples = 12, bananas = 5}

Odczytywanie i zapisywanie wykorzystuje znane Ci indeksowanie. W przypadku kluczy będących prawidłowymi identyfikatorami stock.apples i stock["apples"] wskazują ten sam wpis; zapis nawiasowy obsługuje też klucze zawierające spacje lub przechowywane w zmiennych:

stock["cherries"] = 20   -- dodaj nowy wpis
stock.bananas = 8        -- zaktualizuj istniejący wpis
print(stock["apples"])  -- 12
print(stock["plums"])   -- nil — nigdy nie ustawiono

Sprawdzanie typów kontroluje każdy zapis: stock["apples"] = "many" zostanie oznaczone jako błąd, ponieważ "many" nie jest liczbą, a użycie liczby jako klucza również zostanie oznaczone jako błąd, ponieważ klucze muszą być ciągami znaków.

Aby usunąć wpis, przypisz nil do jego klucza: stock["bananas"] = nil całkowicie go usuwa, a późniejsze odczyty zwracają nil. Nie ma osobnej funkcji usuwania; to standardowy idiom Lua, który nadal przechodzi sprawdzanie typów w mapie.

challenge icon

Wyzwanie

Łatwy

Utwórz typowaną mapę stock: {[string]: number} zainicjalizowaną wartościami apples = 12 i bananas = 5. Następnie:

  1. dodaj nowy wpis cherries o wartości 20
  2. zaktualizuj bananas na 8

Na koniec wypisz, każdy element w osobnym wierszu:

  1. zapas apples
  2. zapas bananas
  3. zapas cherries
  4. zapas plums: klucz, którego nigdy nie ustawiasz

Spróbuj swoich sił

-- Napisz kod tutaj
-- 1) zadeklaruj stock: {[string]: number} z apples = 12, bananas = 5
-- 2) dodaj cherries = 20, zaktualizuj bananas do 8
-- 3) wypisz apples, bananas, cherries, a następnie plums
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Wprowadzenie do Luau

Poćwicz samodzielnie: Kompilator Luau online