lua:obter a lista de chaves de uma tabela
Pergunta
Eu preciso saber como obter o conjunto de chaves de uma tabela na lua.por exemplo, se eu tenho a seguinte tabela:
tab = {}
tab[1]='a'
tab[2]='b'
tab[5]='e'
Eu quero ser recuperar uma tabela semelhante à seguinte:
keyset = {1,2,5}
Solução
local keyset={}
local n=0
for k,v in pairs(tab) do
n=n+1
keyset[n]=k
end
Observe que você não pode garantir qualquer ordem keyset
.Se você quiser as teclas na ordem de classificação, em seguida, classificar keyset
com table.sort(keyset)
.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow