有没有一种简单的方法可以连接两个序列类型的表格?例如:
a = {1, 2, 3}
b = {5, 6, 7}
c = cat(a,b)
在哪个表 {1,2,3,5,6,7}
中,c
所指的位置?
a = {1, 2, 3}
b = {5, 6, 7}
c = cat(a,b)
在哪个表 {1,2,3,5,6,7}
中,c
所指的位置?
function cat(t, ...)
local new = {unpack(t)}
for i,v in ipairs({...}) do
for ii,vv in ipairs(v) do
new[#new+1] = vv
end
end
return new
end
它使用迭代方法将每个数组的元素添加到一个新数组中。
值得注意的是,{unpack(t)}只在元素数量少于特定数量时才起作用,这是由于Lua中元组的工作方式不同。这取决于版本和你正在做什么,但如果很小,你可能无需担心。
{unpack(t)}
仅适用于多达一百万个表元素(如果您有16位的int
,则为15000)。 - siffiejoe