Lua 语法之迭代器
迭代器
主要是用来遍历表的
两个迭代器区别
# | ipairs | pairs |
---|---|---|
索引必须数字且连续 | 索引必须数字且连续 | 索引可以随意 |
从1开始到nil | 从1开始到nil | 从1开始到无其他索引 |
字符索引不识别 | 字符索引不识别 | 字符索引识别 |
关键字 ipairs
-- # 得到长度 其实并不准确 一般不要用 # 来遍历表
-- 遍历不全
a={[0]=1,2,[-1]=3,4,5,[6]=6}
print("***********ipairs************")
--ipairs
--ipairs 遍历 还是 从1 开始往后遍历的 小于等于0 的值得不到
-- 只能找到连续索引的 键 如果中间断序了 它也无法遍历出后面的内容
-- 遍历不全
-- 在我测试时发现甚至不如 # (以前功能应该差不多)
for i,k in ipairs(a) do
print("ipairs 遍历键值" ..i.."_"..k)
end
关键字 pairs
-- pairs 它能把所有的键都找到 通过键可以得到值 !!!所有
-- 推荐使用
for i,v in pairs(a) do
print("pairs 遍历键值" ..i.."_"..v)
end
for i in pairs(a) do
print("pairs 遍历键"..i)
end
分类:
Lua 语法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!