如何将两个数组合并为一个如下:
local array1 = {2272, 2271, 2270, 2269}
local array2 = {2267, 2266, 2268, 2265, 2264, 2263, 2262, 2261}
local fusedArray = {2272, 2271, 2270, 2269, 2267, 2266, 2268, 2265, 2264, 2263, 2262, 2261}
要么
local array1 = {2292, 2291, 2290, 2289}
local array2 = {2267, 2266, 2268, 2265, 2264, 2263, 2262, 2261}
local fusedArray = {2292, 2291, 2290, 2289, 2267, 2266, 2268, 2265, 2264, 2263, 2262, 2261}
标准库可以帮助解决这个问题:
local function concatArray(a, b)
local result = {table.unpack(a)}
table.move(b, 1, #b, #result + 1, result)
return result
end
请参阅文档中的table.move
和table.unpack
。
您将必须迭代两个表(使用ipairs
或pairs
函数)并将元素插入第三个表。如果您可以修改其中一个,则只迭代另一个表并将其元素插入第一个表中。
只需复制一切:
local fusedArray = {}
local n=0
for k,v in ipairs(array1) do n=n+1 ; fusedArray[n] = v end
for k,v in ipairs(array2) do n=n+1 ; fusedArray[n] = v end