CHUAN2 DEV ENGINE
996 正版授权研发中心 · 360 授权合作教学中心 · 抖音传奇直播合作授权 · 快手推广运营商授权
OFFICIAL LICENSED ACADEMY 查验官方授权证书 →
// 威海旷世互娱教学基地 · 技术文章
Lua基础Table数组

一维数组:抽屉里的 1、2、3、4、5 怎么取

2026-10-18 00:24 作者:吴大圣老师 Lua基础Table数组

上节课把表当收纳盒。今天只干一件事:把「顺序存放」这种用法吃透。Lua 里叫它 数组(一维)。

本课互动训练:专属动画 + 选择题测验。 打开 第 02 课 · 动画闯关,先看动画,再完成 3 道选择题。

一、标准写法

lua
local t = {1, 2, 3, 4, 5}
print(t[1], t[2], t[3])  --> 1  2  3

大括号里按顺序写值,Lua 自动给它们编号 1、2、3、4、5……这就是隐式主键:你不写编号,它替你写好。

二、和「散装变量」比一比

不用表时,我们可能这样写:

lua
local name = "张三"
local age = 18
local sex = "男"

能跑,但只有 3 个还行;装备 20 件、技能 50 个呢?变量会爆炸。塞进表:

lua
local player = {"张三", 18, "男"}
print(player[1], player[2], player[3])

数据被关进一个盒子,名字只有一个,管理成本直线下降。

三、for 循环批量取

一个个 print(t[i]) 太土。循环才是正道:

lua
local t = {10, 20, 30, 40}
for i = 1, #t do
    print("第", i, "格 =", t[i])
end

#t 是「表的长度」(后面专讲),i 就是抽屉编号。这一招后面写发放奖励、遍历背包,天天用。

四、常见翻车点

  • 取值写成 t[0]:Lua 数组从 1 开始,t[0] 通常是 nil
  • 忘记循环上限用 #t,自己写死数字,后来加元素就漏
  • 把表当字符串拼接:t 本身不能直接「当一串字」,要取里面的元素

今日练习:写一个表存 5 件装备名,用 for 循环全部打印。再试着打印 t[6],理解什么是 nil。


课堂互动训练

作者履历与出处

本文由 996 技术组基于 996 引擎官方知识库与浮生梦老师课程体系整理。团队长期从事传奇类引擎 Lua 后端逻辑、客户端界面与商业版本交付,内容以官方知识库与真实项目为出处,按版本持续修订。

← 返回文章地图返回研学路径

幂尔框架 · 实战干货 · 接口调用

LATEST ARTICLES

全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →

Lua实战NPC

NPC 界面与 GM 小工具:say / button / link 传参

会判断了,就能做会回话的 NPC。今天拼一个简易 GM 工具界面。 一、用 say 吐出界面 客户端编辑器 Ctrl + F…

2026-10-18 01:01 吴大圣老师
Lua基础逻辑运算

与或非:and / or / not 与短路真相

与或非听起来玄,其实就是三张通行证。 一、and(与)= 过安检 机票 + 身份证 ,少一样不让过。后面还能无限加条件。 二…

2026-10-18 01:01 吴大圣老师
Lua基础判断

判断分支实战:if / elseif / else 与防卫语句

判断 = 比较 + 分支。今天把三种 if 写法、以及工程里最好用的「防卫语句」一次练透。 一、三种判断结构 elseif …

2026-10-18 01:01 吴大圣老师
Lua基础Table

从表走到迭代:pairs/ipairs 预告与三大坑

表会建、会取、会增删改查,最后一环是 遍历 。本篇先把坑标出来,下节课正式拆迭代器。 本课互动训练 :专属动画 + 选择题测…

2026-10-18 00:25 吴大圣老师
Lua基础Table

表是引用:改了别人,怎么就跟着变了

「我只改了 b,a 怎么变了?」——这是表引用问题的标准嚎叫。今天把钥匙和锁彻底讲清。 本课互动训练 :专属动画 + 选择题…

2026-10-18 00:25 吴大圣老师
Lua实战Table

玩家背包实战:用表搭一个角色数据库

理论够了,进游戏干一票:用一张表,存下角色的名、级、包、属性,并用它驱动「给我装备」。 本课互动训练 :专属动画 + 选择题…

2026-10-18 00:25 吴大圣老师