📜  如何删除表中的键 lua (1)

📅  最后修改于: 2023-12-03 14:52:09.486000             🧑  作者: Mango

如何删除表中的键 Lua

在 Lua 中,要删除表中的键值对,可以使用 table.remove() 函数或者使用 nil 进行赋值操作。下面我们将介绍这两种方法的具体用法。

使用 table.remove() 函数来删除表中的键

table.remove() 函数可以删除数组中指定位置的元素,同时将删除后的元素后面的元素向前移动。这个函数同样也适用于表中的键。

下面是示例代码:

local tbl = {a=1, b=2, c=3}
table.remove(tbl, "b")
for k, v in pairs(tbl) do
    print(k, v)
end

上面的代码中,我们定义了一个 tbl 表,包含了键值对 {a=1, b=2, c=3},然后使用 table.remove() 函数删除了键为 "b" 的键值对。最后通过 pairs() 函数遍历表中剩余的键值对,输出其键名和键值。

上面代码的输出结果为:

a   1
c   3

可以看到,键为 "b" 的键值对已经被删除了。

使用 nil 进行赋值操作来删除表中的键

除了使用 table.remove() 函数,我们还可以使用 nil 进行赋值操作来删除表中的键。具体来说,就是将对应键的值设置为 nil

下面是示例代码:

local tbl = {a=1, b=2, c=3}
tbl.b = nil
for k, v in pairs(tbl) do
    print(k, v)
end

上面的代码中,我们同样定义了一个 tbl 表,包含了键值对 {a=1, b=2, c=3},然后使用赋值操作将键为 "b" 的值设置为 nil。最后通过 pairs() 函数遍历表中剩余的键值对,输出其键名和键值。

上面代码的输出结果与上面示范代码的输出结果相同。

经过上面两部分的介绍,相信大家已经掌握了如何删除表中的键这个技巧了吧!