课程链接
这节课主要讲解了 Lua 编程语言中的数组和字典(表)的概念、操作方法以及迭代器的使用。以下是这节课的详细内容总结:
1. 数组(一维数组和多维数组)
- 数组的定义:
- 数组是相同数据类型元素的有序集合。
- 在 Lua 中,数组是通过
table
数据类型实现的。
- 一维数组:
- 创建方式:
table = {1, 2, 3, 4}
。
- 访问元素:通过下标访问,例如
table[1]
访问第一个元素。
- 默认下标从
1
开始。
- 多维数组:
- 创建方式:
table = {{1, 2}, {3, 4}}
。
- 访问元素:通过多级下标访问,例如
table[1][2]
访问第一个子数组的第二个元素。
- 数组的增删改查:
- 增加:直接赋值到新的下标位置,例如
table[5] = 5
。
- 删除:将元素设置为
nil
,例如 table[2] = nil
。
- 修改:直接对指定下标的值进行赋值,例如
table[1] = "new_value"
。
- 查询:通过循环或迭代器遍历数组。
2. 字典(表)
- 字典的定义:
- 字典是一种键值对(key-value)的数据结构。
- 在 Lua 中,字典也是通过
table
数据类型实现的。
- 创建字典:
- 使用键值对初始化,例如
table = {name = "张三", age = 18}
。
- 访问元素:通过键访问,例如
table["name"]
或 table.name
。
- 字典的增删改查:
- 增加:直接添加新的键值对,例如
table.job = "teacher"
。
- 删除:将键值对设置为
nil
,例如 table.age = nil
。
- 修改:直接对键对应的值进行赋值,例如
table.name = "李四"
。
- 查询:通过键访问值。
3. 混合型表
- 混合型表:
- 数组和字典可以在同一个表中混合使用。
- 例如:
table = {1, 2, 3, name = "张三"}
。
- 遍历混合型表:
- 使用
pairs
函数可以遍历表中的所有键值对。
- 使用
ipairs
函数只能遍历数组部分(连续的数字键)。
4. 迭代器
- 迭代器的作用:
- 用于遍历表中的元素。
- 比普通循环更灵活,可以处理非连续键的情况。
pairs
函数:
- 遍历表中的所有键值对。
- 示例:
for k, v in pairs(table) do print(k, v) end
。
ipairs
函数:
- 只遍历表中的数组部分(连续的数字键)。
- 示例:
for i, v in ipairs(table) do print(i, v) end
。
5. 其他要点
6. 下一步学习计划
- 讲解堆栈的概念。
- 继续深入学习 Lua 的系统函数。
- 通过实战案例巩固基础语法。
这节课的重点在于理解数组和字典(表)的基本操作,以及如何使用迭代器进行灵活的遍历。通过反复练习和理解,可以更好地掌握 Lua 编程的基础知识。