当前位置 : 主页 > 网络编程 > lua >

如何在Lua中获得第一个表值

来源:互联网 收集:自由互联 发布时间:2021-06-23
有更简单的方法吗?我需要获取表中的第一个值,其索引是什么 是整数但可能不是从[1]开始.谢谢! local tbl = {[0]='a',[1]='b',[2]='c'} -- arbitrary keyslocal result = nilfor k,v in pairs(tbl) do -- might nee
有更简单的方法吗?我需要获取表中的第一个值,其索引是什么
是整数但可能不是从[1]开始.谢谢!

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
如果表可以从零或一个开始,但没有其他内容:

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]

否则,您别无选择,只能使用对遍历整个表,因为键可能不再存储在数组中,而是存储在无序的哈希集中:

local minKey = math.huge
for k in pairs(tbl) do
    minKey = math.min(k, minKey)
end
网友评论