有更简单的方法吗?我需要获取表中的第一个值,其索引是什么 是整数但可能不是从[1]开始。 THX!
local tbl = {[0]='a',[1]='b',[2]='c'} -- arbitrary keys
local result = nil
for k,v in pairs(tbl) do -- might need to use ipairs() instead?
result = v
break
end
答案 0 :(得分:6)
如果表格可以从0或1开始,而不是其他任何内容:
if tbl[0] ~= nil then
return tbl[0]
else
return tbl[1]
end
-- or if the table will never store false
return tbl[0] or tbl[1]
否则,您别无选择,只能使用pairs
遍历整个表,因为密钥可能不再存储在数组中,而是存储在无序的哈希集中:
local minKey = math.huge
for k in pairs(tbl) do
minKey = math.min(k, minKey)
end
答案 1 :(得分:0)