如何通过值复制 Lua 表?
复制一个表意味着我们需要另一个表中存在的一个表的所有值或对。在 Lua 中,没有用于创建这样一个表的标准库函数,但我们可以创建自己的函数。
让我们在 Lua 中创建一个函数,该函数将一个表作为参数,并将创建一个新表,它将是作为函数参数传递的表的精确副本。
示例
参考下面显示的示例 −
a = {} a["name"] = "mukul" a["age"] = 23 a["isWorking"] = true function table.table_copy(t) local t2 = {} for k,v in pairs(t) do t2[k] = v end return t2 end copy = table.table_copy(a) for _,v in pairs(a) do print(v) end for _,v in pairs(copy) do print(v) end
在上面的示例中,我们有一个名为 **a** 的表,稍后我们将它作为参数传递给名为 **table.table_copy()** 的函数,该函数返回我们传递的相同表的副本,最后我打印了这些表中的值以检查复制的表是否准确。
输出
mukul true 23 mukul true 23
广告