Поиск…
Поиск элемента в списке
Там нет встроенного способа поиска списка для определенного элемента. Однако программирование в Lua показывает, как вы можете создать набор, который может помочь:
function Set (list)
local set = {}
for _, l in ipairs(list) do set[l] = true end
return set
end
Затем вы можете поместить свой список в Set и test для членства:
local items = Set { "apple", "orange", "pear", "banana" }
if items["orange"] then
-- do something
end
Использование таблицы в качестве набора
Создать набор
local set = {} -- empty set
Создайте набор с элементами, установив их значение в true
:
local set = {pear=true, plum=true}
-- or initialize by adding the value of a variable:
local fruit = 'orange'
local other_set = {[fruit] = true} -- adds 'orange'
Добавить участника в набор
добавьте элемент, установив его значение в true
set.peach = true
set.apple = true
-- alternatively
set['banana'] = true
set['strawberry'] = true
Удалите элемент из набора
set.apple = nil
Использование nil
вместо false
для удаления «apple» из таблицы предпочтительнее, потому что это упростит итерационные элементы. nil
удаляет запись из таблицы, а false
ее значение.
Тест членства
if set.strawberry then
print "We've got strawberries"
end
Перейдем к элементам в наборе
for element in pairs(set) do
print(element)
end
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow