分析一下lua的for循环遍历的不同
--[[这里是第一种情况
in ipairs 是遍历有序的
in pairs 是遍历无序的
--]]
local tab ={1,2,3,x=33,4,w = 5}
for k,v in ipairs(tab) do
print(k .. " = " .. v)
end
for k,v in pairs(tab) do
print(k .. " = " .. v)
end运行上面的代码后,就是下面的情况
--[[这里是第二种情况
in ipairs 遇到key对应的value是nil的话,就不会继续遍历下去的
in pairs 遇到key对应的value是nil的话,会跳过nil对应的key,然后继续遍历,不打乱他的值
--]]
local tab ={1,2,nil,x=33,4,w = 5}
for k,v in ipairs(tab) do
print(k .. " = " .. v)
end
for k,v in pairs(tab) do
print(k .. " = " .. v)
end
本文详细分析了Lua编程语言中for循环遍历时的不同情况,包括使用inipairs进行有序遍历与无序遍历的区别,以及遇到值为nil时的处理方式。通过实例代码展示不同场景下for循环的特性。
7224

被折叠的 条评论
为什么被折叠?



