Arrays tipados
Parte de la sección Introducción a Luau del Journey de Lua de Coddy — lección 13 de 73.
Los typed arrays son una de las características más útiles de Luau para organizar múltiples values mientras se mantiene la seguridad de type.
En Lua, un array es solo una table con values en las posiciones 1, 2, 3, … y aceptará sin problemas un number, un string y un boolean al mismo tiempo. Luau te permite declare que una table solo debe contener elementos de un type, usando la sintaxis {Type}:
local numbers: {number} = {1, 2, 3, 4, 5}
local names: {string} = {"Alice", "Bob", "Charlie"}
local flags: {boolean} = {true, false, true}Cuando declare un typed array, el comprobador de type de Luau garantiza que solo entren values del type declarado. Si insert un string en un array de {number}, obtendrás un type error mientras editas, antes de que el código se ejecute:
local scores: {number} = {85, 90, 78}
table.insert(scores, "oops") -- ✗ error de tipo: string no es un numberTodo lo que ya sabes sobre las Lua tables sigue aplicándose: los arrays son 1-based (scores[1] es el first elemento), #scores es la longitud, y table.insert / table.remove funcionan como de costumbre. La anotación añade seguridad, no un nuevo comportamiento en tiempo de ejecución.
Desafío
FácilCrea un array tipado llamado scores que solo pueda contener números, inicializado con 85, 92 y 78.
Crea un segundo array tipado llamado studentNames que solo pueda contener cadenas de texto, inicializado con "Alice", "Bob" y "Charlie".
Después imprime, cada uno en su propia línea:
- el primer puntaje
- cuántos puntajes hay (usa
#) - el segundo nombre de estudiante
Pruébalo tú mismo
-- Escribe código aquí
-- 1) declara scores: {number} y studentNames: {string}
-- 2) imprime el primer score, la cantidad de scores y el segundo name
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Introducción a Luau
1Primeros pasos con Luau
¿Qué es Luau?¿Por qué usar Luau?Tu primer código en LuauComprobación de tipos y modos de errorRecapitulacion: Introducción a Luau4Trabajando con Funciones
Tipado de Parámetros y Valores de RetornoTipado de Funciones AnónimasFunciones que no Retornan NadaParámetros OpcionalesValores por Defecto en ParámetrosFunciones VariádicasDefinición de Tipos de FuncionesRecapitulaciones: Funciones Tipadas2Tipos principales
Tipos básicos: num, str, boolEl tipo 'any': Vía de escapeEl tipo 'unknown'Tipos nulos y opcionalesInferencia de tipos en acciónAnotaciones explícitas de tiposResumen: Práctica de tipos principales5Alias, Uniones e Intersecciones
Alias de tipos para primitivosTipos de uniónTrabajando con tipos de uniónTipos literalesTipos de intersecciónCombinando alias de tiposResumen: Combinaciones avanzadas de tipos3Tablas tipadas: Arrays y Maps
Arrays tipadosAñadir y leer elementos¿Qué es un tipo Map?Declarar y acceder a MapsIterar tablasTablas de forma mixtaArrays tipados multidimensionalestable.unpack y VarargsRecapitulaciones: Arrays y Maps