Menu
Coddy logo textTech

Déclaration et accès aux Maps

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

Déclarer une map typée ressemble aux constructeurs de tables que vous avez toujours écrits : l’annotation fixe simplement les types des clés et des valeurs :

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

La lecture et l’écriture utilisent l’indexation que vous connaissez. Pour les clés qui sont des identifiants valides, stock.apples et stock["apples"] accèdent à la même entrée ; la forme entre crochets gère également les clés contenant des espaces ou celles stockées dans des variables :

stock["cherries"] = 20   -- ajouter une nouvelle entrée
stock.bananas = 8        -- mettre à jour une existante
print(stock["apples"])  -- 12
print(stock["plums"])   -- nil — jamais défini

Le vérificateur de types surveille chaque écriture : stock["apples"] = "many" est signalé, car "many" n’est pas un nombre, et l’utilisation d’un nombre comme clé est signalée, car les clés doivent être des chaînes.

Pour supprimer une entrée, affectez nil à sa clé : stock["bananas"] = nil la supprime entièrement, et les lectures ultérieures renvoient nil. Il n’existe pas de fonction de suppression distincte ; c’est l’idiome Lua standard, et cela reste vérifié par le système de types sur une map.

challenge icon

Défi

Facile

Créez une map typée stock: {[string]: number} initialisée avec apples = 12 et bananas = 5. Ensuite :

  1. add une nouvelle entrée cherries avec la valeur 20
  2. mettez à jour bananas à 8

Enfin, affichez, chacune sur sa propre ligne :

  1. le stock de apples
  2. le stock de bananas
  3. le stock de cherries
  4. le stock de plums : une clé que vous n'avez jamais définie

Essayez vous-même

-- Écrivez le code ici
-- 1) déclarez stock : {[string]: number} avec apples = 12, bananas = 5
-- 2) ajoutez cherries = 20, mettez à jour bananas à 8
-- 3) affichez apples, bananas, cherries, puis plums
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Introduction à Luau

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