Menu
Coddy logo textTech

Добавление и изменение пар

Часть раздела Основы путешествия по Lua на Coddy. Урок 68 из 90.

Чтобы добавить новую пару key-value или изменить existing, просто используйте оператор присваивания с dot notation или bracket notation:

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

-- Добавить новую пару ключ-значение
player.gold = 100

-- Изменить существующее значение
player.level = 6

Прелесть этого подхода в том, что Lua не различает добавление и изменение. Если "gold" key не существует в table, он создаётся со значением 100. Если "level" key уже существует, его значение обновляется до 6.

Для these операций можно использовать либо dot notation, либо bracket notation:

-- Оба этих работают одинаково
player.class = "Warrior"
player["weapon"] = "Sword"
challenge icon

Задание

Легко

Создайте систему развития персонажа, демонстрирующую добавление новых атрибутов и изменение существующих. Начните с создания table с именем hero и следующими initial парами ключ-значение: ["name"] должно получать строку "Warrior", ["level"] должно получать число 5, а ["health"] должно получать число 120.

После создания initial character table выполните следующие изменения: сначала добавьте новую пару ключ-значение ["class"] со значением "Paladin" using dot notation. Затем измените существующее значение level на 7 using bracket notation. Наконец, добавьте ещё одну новую пару ключ-значение ["mana"] со значением 80 using bracket notation.

После завершения всех изменений выведите class героя и updated level, чтобы проверить изменения.

Попробуйте сами

-- Создать начальную таблицу hero
local hero = {
    -- TODO: Добавить начальные пары ключ-значение здесь
}

-- TODO: Добавить новые атрибуты и изменить существующие, используя точечную и скобочную нотацию

-- Вывести class героя и обновлённый level
print(hero.class)
print(hero.level)
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор Lua