Array tipizzati
Fa parte della sezione Introduzione a Luau del percorso Lua di Coddy. Lezione 13 di 73.
Gli array tipizzati sono una delle funzionalità più utili di Luau per organizzare più valori mantenendo la sicurezza dei tipi.
In Lua, un array è semplicemente una tabella con valori alle posizioni 1, 2, 3, … e può contenere tranquillamente un numero, una stringa e un valore booleano tutti insieme. Luau ti permette di dichiarare che una tabella deve contenere solo elementi di un tipo, usando la sintassi {Type}:
local numbers: {number} = {1, 2, 3, 4, 5}
local names: {string} = {"Alice", "Bob", "Charlie"}
local flags: {boolean} = {true, false, true}Quando dichiari un array tipizzato, il controllo dei tipi di Luau verifica che contenga solo valori del tipo dichiarato. Se inserisci una stringa in un array {number}, ricevi un errore di tipo mentre modifichi il codice, prima ancora che venga eseguito:
local scores: {number} = {85, 90, 78}
table.insert(scores, "oops") -- ✗ errore di tipo: string non è un numberTutto ciò che già sai sulle tabelle Lua continua a valere: gli array sono basati su 1 (scores[1] è il primo elemento), #scores è la lunghezza e table.insert / table.remove funzionano come al solito. L'annotazione aggiunge sicurezza, non un nuovo comportamento durante l'esecuzione.
Sfida
FacileCrea un array tipizzato chiamato scores che possa contenere solo numeri, inizializzato con 85, 92 e 78.
Crea un secondo array tipizzato chiamato studentNames che possa contenere solo stringhe, inizializzato con "Alice", "Bob" e "Charlie".
Poi stampa, ciascuno su una riga:
- il primo punteggio
- quanti punteggi ci sono (usa
#) - il secondo nome dello studente
Provalo tu
-- Scrivi il codice qui
-- 1) dichiara scores: {number} e studentNames: {string}
-- 2) stampa il primo punteggio, il numero di elementi in scores e il secondo nome
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Introduzione a Luau
1Per iniziare con Luau
Che cos'è Luau?Perché usare Luau?Il tuo primo codice LuauVerifica dei tipi e modalità di erroreRiepilogo: introduzione a Luau4Lavorare con le funzioni
Tipizzare i parametri e i valori restituitiTipizzare le funzioni anonimeFunzioni che non restituiscono nullaParametri opzionaliValori predefiniti dei parametriFunzioni variadicheDefinire i tipi di funzioneRiepilogo: funzioni tipizzate2Tipi fondamentali
Tipi di base: num, str, boolIl tipo 'any': una via di fugaIl tipo 'unknown'Nil e tipi opzionaliL'inferenza dei tipi in azioneAnnotazioni esplicite dei tipiRipasso: esercizi sui tipi fondamentali5Alias, unioni e intersezioni
Alias di tipo per i primitiviTipi unioneLavorare con i tipi unioneTipi letteraliTipi intersezioneCombinare gli alias di tipoRiepilogo: combinazioni avanzate di tipi3Tabelle tipizzate: array e mappe
Array tipizzatiAggiungere e leggere elementiChe cos'è un tipo Map?Dichiarare e accedere alle mappeIterare sulle tabelleTabelle con strutture misteArray tipizzati multidimensionalitable.unpack e argomenti variabiliRiepilogo: array e mappeEsercitati da solo: Compilatore Luau online