📜  lua table unpack - Lua (1)

📅  最后修改于: 2023-12-03 15:17:27.422000             🧑  作者: Mango

Lua table unpack

在Lua中,table是一种非常常用的数据结构,其中包含了很多值。Lua table unpack可以将这些值按照顺序解包出来,便于使用和处理。

语法
table.unpack(list, [i], [j])
  • list:待解包的table。
  • i:起始下标(可选,默认为1)。
  • j:结束下标(可选,默认为table长度)。
示例
-- 解包
local t = {1, 2, 3}
print(table.unpack(t)) -- 1 2 3

-- 解包并省略一部分
local t = {1, 2, 3, 4, 5}
print(table.unpack(t, 2, 4)) -- 2 3 4

-- 使用解包结果
local t = {1, 2, 3}
local a, b, c = table.unpack(t)
print(a, b, c) -- 1 2 3

-- 快速交换变量的值
local a, b = 1, 2
a, b = b, a
print(a, b) -- 2 1
注意事项

如果未指定j,则默认为table长度。如果未指定i和j,则默认为1和table长度。如果指定的i或j超出了范围,则会返回nil。

结论

Lua table unpack函数非常实用,可以用于解包table、快速交换变量、省略部分值等操作。因此,在Lua编程中,掌握table unpack函数是非常重要的技能。