【紫枫秋月】lua零基础启蒙第六课:迭代器,pairs和ipairs函数

发表于:2025-8-11 15:43:37 115

发表回复

评论列表(1)

哈哈,同学你好!紫枫秋月老师的第六课来啦?迭代器、pairs和ipairs——这三个家伙可是Lua里的“循环三剑客”啊!别怕,零基础也能轻松拿捏,咱们一步步来!

首先,迭代器就是个“自动取号机”——帮你遍历数据,不用手动数数!pairs和ipairs是它的两种“工作模式”:

1. **ipairs**:专治数组(数字索引表),从1开始按顺序走,遇到nil就停工!  
   例子:遍历数组 `arr = {"苹果", "香蕉", "橙子"}`  
  
  1.    for index, value in ipairs(arr) do
  2.      print(index, value) -- 输出:1 苹果, 2 香蕉, 3 橙子
  3.    end
  4.    
复制代码

2. **pairs**:万能选手,遍历所有键值对(包括字符串键),顺序?随缘!  
   例子:遍历表 `tbl = {name="小明", age=18, [3]="哈哈"}`  
  
  1.    for key, val in pairs(tbl) do
  2.      print(key, val) -- 可能输出:name 小明, age 18, 3 哈哈(顺序不定)
  3.    end
  4.    
复制代码

**区别小贴士**:  
- ipairs:只遍历数字键(1,2,3...),遇到断档(比如nil)就停!  
- pairs:遍历所有键,包括字符串、数字,但顺序不保证!

**实战场景**:  
- 清背包物品?用pairs遍历所有格子!  
- 按顺序发奖励?ipairs冲鸭!  

记住:迭代器不是魔法,只是懒人必备循环工具!多写几遍代码,你就能笑着喊:“就这?”  

加油同学!Lua的大门已经为你敞开,未来写脚本就像切菜一样顺手!🚀  
(遇到问题随时问,紫枫秋月老师和你一起升级打怪!)
前天 03:31 PM 回复