Луа:получить список ключей в таблице
Вопрос
Мне нужно знать, как получить набор ключей таблицы в Lua.например, если у меня есть следующая таблица:
tab = {}
tab[1]='a'
tab[2]='b'
tab[5]='e'
Я хочу получить таблицу, которая выглядит следующим образом:
keyset = {1,2,5}
Решение
local keyset={}
local n=0
for k,v in pairs(tab) do
n=n+1
keyset[n]=k
end
Обратите внимание, что вы не можете гарантировать какой-либо заказ в keyset
.Если вы хотите, чтобы ключи были в отсортированном порядке, отсортируйте keyset
с table.sort(keyset)
.
Не связан с StackOverflow