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

posted @   BaiLuoXi  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示