Таблицы
Таблицами в Lua называют ассоциированные массивы. Это гибкий и мощный инструмент хранения и манипуляции данными.
Для создания таблицы применяется следующий синтаксис:
t = {};
Вначале пишется желаемое имя таблицы, затем символ равно и пустые фигурные скобки. Также внутри скобок можно сразу же задать желаемые значения, это могут быть цифры, текст, в общем, любые типы данных.
n = { 0, 1, 1, 2, 3, 5, 8 }; d = { "понедельник", "вторник", "среда", "четверг", "пятница", "суббота", "воскресенье" };
Обратиться к элементу таблицы можно по его индексу. По умолчанию, первый элемент равен 1. Таким образом, чтобы получить "понедельник" из таблицы d надо написать d[1], как показано ниже.
print (d[1]);
Если нас интересует обращение к элементу по его имени, то следует задать ключи. Это делается двумя способами.
d = {}; -- первый метод d.mon = "понедельник"; d.tue = "вторник"; d.wed = "среда"; -- второй метод d = { mon = "понедельник", tue = "вторник", wed = "среда" };
Обратиться к элементу такой таблицы можно как d.mon или d["mon"].
Одна таблица может содержать в себе другую таблицу, как показано в примере ниже.
player = {}; player.position = { x = 540, y = 120 }; print(player.position.x);
Тогда задать или получить координаты можно по имени player.position.x.