Menu
Coddy logo textTech

Ajouter et modifier des paires

Fait partie de la section Fundamentals du Journey Lua de Coddy — leçon 68 sur 90.

Pour ajouter une nouvelle paire clé-valeur ou modifier une paire existante, vous utilisez simplement l'opérateur d'affectation avec soit la notation par point, soit la notation par crochets :

local player = {
    ["name"] = "Alex",
    ["level"] = 5
}

-- Ajouter une nouvelle paire clé-valeur
player.gold = 100

-- Modifier une valeur existante
player.level = 6

La beauté de cette approche est que Lua ne fait pas de distinction entre l'ajout et la modification. Si la clé "gold" n'existe pas dans la table, elle est créée avec la valeur 100. Si la clé "level" existe déjà, sa valeur est mise à jour à 6.

Vous pouvez utiliser soit la notation par point, soit la notation par crochets pour ces opérations :

-- Ces deux méthodes fonctionnent de la même manière
player.class = "Warrior"
player["weapon"] = "Sword"
challenge icon

Défi

Facile

Créez un système de progression de personnage qui démontre à la fois l'ajout de nouveaux attributs et la modification d'attributs existants. Commencez par créer une table nommée hero avec les paires clé-valeur initiales suivantes : ["name"] doit se voir attribuer la chaîne "Warrior", ["level"] doit se voir attribuer le nombre 5, et ["health"] doit se voir attribuer le nombre 120.

Après avoir créé la table de personnage initiale, effectuez les modifications suivantes : Tout d'abord, ajoutez une nouvelle paire clé-valeur ["class"] avec la valeur "Paladin" en utilisant la notation par point. Ensuite, modifiez la valeur level existante en 7 en utilisant la notation par crochets. Enfin, ajoutez une autre nouvelle paire clé-valeur ["mana"] avec la valeur 80 en utilisant la notation par crochets.

Une fois toutes les modifications terminées, affichez la classe du héros et le niveau mis à jour pour vérifier les changements.

Aide-mémoire

Pour ajouter une nouvelle paire clé-valeur ou modifier une paire existante dans une table, utilisez l'opérateur d'affectation avec la notation par point ou la notation par crochets :

local player = {
    ["name"] = "Alex",
    ["level"] = 5
}

-- Ajouter une nouvelle paire clé-valeur
player.gold = 100

-- Modifier une valeur existante
player.level = 6

Lua ne fait pas de distinction entre l'ajout et la modification - si la clé n'existe pas, elle est créée ; si elle existe, sa valeur est mise à jour.

La notation par point et la notation par crochets fonctionnent toutes deux pour ces opérations :

-- Les deux fonctionnent de la même manière
player.class = "Warrior"
player["weapon"] = "Sword"

Essayez vous-même

-- Créer la table initiale du héros
local hero = {
    -- TODO: Ajouter les paires clé-valeur initiales ici
}

-- TODO: Ajouter de nouveaux attributs et modifier ceux existants en utilisant la notation par point et par crochet

-- Afficher la classe du héros et son niveau mis à jour
print(hero.class)
print(hero.level)
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 Fundamentals