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.

La déclaration d'une table typée (map) ressemble aux constructeurs de tables que vous avez toujours écrits — l'annotation fixe simplement les types de clé et de valeur :

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 avec crochets gère également les clés contenant des espaces ou celles stockées dans des variables :

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

Le vérificateur de type surveille chaque écriture : stock["apples"] = "many" est signalé car "many" n'est pas un nombre, et utiliser un nombre comme clé est signalé car les clés doivent être des chaînes de caractères.

Pour supprimer une entrée, attribuez nil à sa clé — stock["bananas"] = nil la supprime complètement, et les lectures ultérieures renvoient nil. Il n'y a pas de fonction de suppression distincte ; c'est l'idiome Lua standard, et cela fonctionne toujours avec la vérification de type sur une map.

challenge icon

Défi

Facile

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

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

Enfin, affichez avec print, chacun 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éclarer stock : {[string]: number} avec apples = 12, bananas = 5
-- 2) ajouter cherries = 20, mettre à jour bananas à 8
-- 3) afficher 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