Статья [DF] Изучение Glua #3

  • 175
  • 16
  • 61

Массивы


Это таблицы, некие места, в которых хранятся данные по ключевому типу (об этом позже)

Пример:
Lua:
local box = { 'Карандаш', 'Яблоко', 'Телефон' }
local diary = { 5, 4, 5, 5, 2, 3 }
local speed = { 56.6, 40.7, 60.1, 50 }
local haos = { 'ночь', 23.5, true, nil, 10 }

-- также стоит знать, что сам массив может содержать другие массивы в себе
local wardrobe = { { 'Надеюсь', 'вы', 'поняли' }, { 12, 10, 11 } }

Индексация массивов


Как было сказано ранее: всё, что находится в массиве - имеет свой ключ. Простым языком, имеет определённое место, где находится.

Отсюда:
Lua:
local tabl = { 50, 100 }

-- цифра "50" находится на первом месте
-- цифра "100" на втором

Сам индекс вызывается через использование квадратных скобок. Для полной наглядности, сделаем вышенаписанный код, но с использованием индексов (оба кода будут равны друг другу - одно и то же)
Lua:
local tabl = { [1] = 50, [2] = 100 }

Это поняли. Теперь добавлю, что массив может состоять не только из целочисленных ключей, но и текстовых

Lua:
local x = {
    name = 'Вася',
    surname = 'Пупкин',
    age = 23,
}

-- и не стоит считать что string Вася - это значение индекса "1"
-- у нас вообще нет численных индексов здесь
-- Вася - это значение индекса "name"

Повторно перепишем код, но подробно

Lua:
local x = {
    [ 'name' ] = 'Вася',
    [ 'surname' ] = 'Пупкин',
    [ 'age' ] = 23,
}

Использование массивов


К ним можно обращаться и вводишь новые параметры, благодаря использованию индексов

Lua:
local test = { 20, 5, 4 }

local x = test[ 1 ]
-- записыванием в переменную значение из таблицы, чей ключ равен "1"
-- в нашем случаи, это 20
Lua:
local tabl = { apples = 5, cakes = 2 }

-- к текстовому же ключу можно обращаться двумя способами:
local x = tabl.apples
-- либо
local y = tabl[ 'apples' ]
-- всё зависит от ситуации. Но результат один и тот же
Lua:
local tabl = {}

tabl[ 1 ] = 5
tabl[ 2 ] = 7

-- в итоге, наш массив теперь не пуст
-- на первом месте находится цифра 5, на втором - 7
-- можно считать, что массив выглядит так:

local tabl = { 5, 7 }

Дискорд для связи: DarkFated#2147
 
Последнее редактирование:
Активность
Пока что здесь никого нет
Сверху Снизу