在 Lua 中,表(table)是一种非常灵活的数据结构,它既可以用作数组,也可以用作关联数组(类似于字典或映射)。表是 Lua 中最主要的数据结构之一,以下是关于 Lua 表的一些基本操作和特性:

创建表
-- 创建一个空表
local myTable = {}

-- 创建带有初始值的表
local person = {name = "Alice", age = 30, city = "Wonderland"}

访问表元素
-- 使用键访问元素
print(person["name"])  -- 输出 "Alice"

-- 使用点语法访问元素
print(person.age)  -- 输出 30

修改表元素
-- 修改表元素
person.age = 31
person["city"] = "New Wonderland"

向表中添加元素
-- 添加新元素
person.gender = "Female"

删除表中的元素
-- 删除元素
person.city = nil

遍历表
-- 使用 pairs 迭代器遍历表
for key, value in pairs(person) do
    print(key, value)
end

表的长度
-- 获取表的长度
local length = #myTable

多维表
-- 多维表
local matrix = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9}
}
print(matrix[2][3])  -- 输出 6

表的复制
-- 复制表
local copyOfPerson = {table.unpack(person)}

表作为函数参数
-- 表作为函数参数
function printPersonInfo(person)
    print("Name:", person.name)
    print("Age:", person.age)
    print("City:", person.city)
end

printPersonInfo(person)

表在 Lua 中是动态的,可以根据需要添加或删除元素,也可以用作传递参数或返回值。由于表的灵活性,它在 Lua 中被广泛用于表示各种数据结构。


转载请注明出处:http://www.pingtaimeng.com/article/detail/13702/Lua