Menu
CoddyTech

Tableaux typés

Fait partie de la section Introduction à Luau du Journey Lua de Coddy. Leçon 13 sur 80.

Les tableaux typés sont l’une des fonctionnalités les plus utiles de Luau pour organiser plusieurs valeurs tout en préservant la sécurité des types.

En Lua, un tableau est simplement une table contenant des valeurs aux positions 1, 2, 3, …, et il peut sans problème contenir à la fois un nombre, une chaîne et une valeur booléenne. Luau permet de déclarer qu’une table ne doit contenir que des éléments d’un seul type, à l’aide de la syntaxe {Type} :

local numbers: {number} = {1, 2, 3, 4, 5}
local names: {string} = {"Alice", "Bob", "Charlie"}
local flags: {boolean} = {true, false, true}

Lorsque tu déclares un tableau typé, le vérificateur de types de Luau s’assure que seules des valeurs du type déclaré y sont ajoutées. Insère une chaîne dans un tableau {number} et tu obtiens une erreur de type pendant la modification, avant même que le code ne s’exécute :

local scores: {number} = {85, 90, 78}
table.insert(scores, "oops") -- ✗ erreur de type : string n'est pas un nombre

Tout ce que tu sais déjà sur les tables Lua s’applique toujours : les tableaux sont indexés à partir de 1 (scores[1] est le premier élément), #scores correspond à la longueur, et table.insert / table.remove fonctionnent comme d’habitude. L’annotation ajoute de la sécurité, pas de nouveau comportement à l’exécution.

challenge icon

Défi

Facile

Stocke les scores et les noms dans des tableaux typés.

  1. Déclare local scores: {number} = {85, 92, 78}.
  2. Déclare local studentNames: {string} = {"Alice", "Bob", "Charlie"}.
  3. Affiche scores[1], #scores et studentNames[2], un par ligne.

Appuie sur Exécuter le code : la sortie affiche 85, 3 et Bob.

Essayez vous-même

-- 1) déclare scores: {number} et studentNames: {string}
-- 2) affiche le premier score, le nombre de scores et le deuxième nom

Toutes les leçons de Introduction à Luau

Entraînez-vous par vous-même : Compilateur Luau en ligne