Menu
CoddyTech

Dichiarare e accedere alle mappe

Fa parte della sezione Introduzione a Luau del percorso Lua di Coddy. Lezione 16 di 80.

Dichiarare una mappa tipizzata è simile ai costruttori di tabelle che hai sempre scritto: l’annotazione specifica semplicemente i tipi delle chiavi e dei valori:

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

Per leggere e scrivere si usa l’indicizzazione che già conosci. Per le chiavi che sono identificatori validi, stock.apples e stock["apples"] accedono alla stessa voce; la notazione con le parentesi quadre gestisce anche le chiavi con spazi o quelle memorizzate in variabili:

stock["cherries"] = 20   -- aggiungi una nuova voce
stock.bananas = 8        -- aggiorna una voce esistente
print(stock["apples"])  -- 12
print(stock["plums"])   -- nil: mai impostato

Il verificatore dei tipi controlla ogni assegnazione: stock["apples"] = "many" viene segnalata perché "many" non è un numero, e usare un numero come chiave viene segnalato perché le chiavi devono essere stringhe.

Per eliminare una voce, assegna nil alla sua chiave: stock["bananas"] = nil la rimuove del tutto e le letture successive restituiscono nil. Non esiste una funzione separata per l’eliminazione: è la convenzione standard di Lua e continua a essere verificata correttamente dal controllo dei tipi su una mappa.

challenge icon

Sfida

Facile

Mantieni una mappa tipizzata del materiale scolastico.

  1. Dichiara local stock: {[string]: number} = {pens = 40, rulers = 15}.
  2. Aggiungi stock["erasers"] = 25 e cambia rulers in 10.
  3. Stampa le quantità di pens, rulers, erasers e glue, una per riga.

Premi Esegui codice: l'output mostra 40, 10, 25 e nil.

Provalo tu

-- 1) dichiara stock: {[string]: number} con pens = 40, rulers = 15
-- 2) aggiungi erasers = 25, cambia rulers a 10
-- 3) stampa pens, rulers, erasers, poi glue

Tutte le lezioni di Introduzione a Luau

Esercitati da solo: Compilatore Luau online