Lua:获取表中键的列表

我需要知道如何在 Lua 中检索表的键集。例如,如果我有以下表:

tab = {}
tab[1]='a'
tab[2]='b'
tab[5]='e'

我想要检索一个类似以下的表:

keyset = {1,2,5}
点赞
用户107090
用户107090
local keyset={}
local n=0

for k,v in pairs(tab) do
  n=n+1
  keyset[n]=k
end

请注意,无法保证"keyset"中的顺序。如果您希望按排序顺序获取键,则可以使用 "table.sort(keyset)" 对 "keyset" 进行排序。

2012-10-01 13:35:28
用户1624512
用户1624512
-- 获取表中所有键值
local function get_keys(t)
  local keys={}
  for key,_ in pairs(t) do
    table.insert(keys, key)
  end
  return keys
end
2021-11-29 10:40:57