表会建、会取、会增删改查,最后一环是遍历。本篇先把坑标出来,下节课正式拆迭代器。
本课互动训练:专属动画 + 选择题测验。 打开 第 10 课 · 动画闯关,先看动画,再完成 3 道选择题。
local t = {"木剑", "屠龙", "传送石"}
for i = 1, #t do
print(i, t[i])
end
主键连续的数组,这样最稳。
local t = {name = "张三", age = 18, sex = "男"}
for k, v in pairs(t) do
print(k, v)
end
pairs 把每一对「主键-值」吐出来。字典没 #,只有 pairs 这条路。
| ipairs | pairs | |
|---|---|---|
| 走法 | 从 1 开始连续走到 nil | 所有键值对 |
| 适合 | 标准数组 | 字典 / 稀疏表 |
| 中途断档 | 会提前停 | 不受断档影响 |
local t = {1, 2, nil, 4} -- 中间空
-- ipairs 可能只吐出 1、2
-- pairs 会把有的都吐出来(顺序不保证)
#:结果是 0,还以为表是空的pairs 还依赖顺序:pairs 不保证顺序,要顺序就用 ipairs 或数字 for# 只信连续数组正式拆开迭代器:pairs / ipairs / next / 自定义迭代,以及在背包、掉落表上的实战遍历。表这一关过了,后面模块和封装会顺很多。
今日练习:一个字典 player(name/level/att),用 pairs 打印所有键值;一个装备数组,分别用 ipairs 和 for + # 遍历,对比结果。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
会判断了,就能做会回话的 NPC。今天拼一个简易 GM 工具界面。 一、用 say 吐出界面 客户端编辑器 Ctrl + F…
与或非听起来玄,其实就是三张通行证。 一、and(与)= 过安检 机票 + 身份证 ,少一样不让过。后面还能无限加条件。 二…
判断 = 比较 + 分支。今天把三种 if 写法、以及工程里最好用的「防卫语句」一次练透。 一、三种判断结构 elseif …
表会建、会取、会增删改查,最后一环是 遍历 。本篇先把坑标出来,下节课正式拆迭代器。 本课互动训练 :专属动画 + 选择题测…
「我只改了 b,a 怎么变了?」——这是表引用问题的标准嚎叫。今天把钥匙和锁彻底讲清。 本课互动训练 :专属动画 + 选择题…
理论够了,进游戏干一票:用一张表,存下角色的名、级、包、属性,并用它驱动「给我装备」。 本课互动训练 :专属动画 + 选择题…