新北狂纱 发表于 2023-3-21 13:46

Unity学习路线-理论知识部分-Lua-Lua其他-unpack函数

unpack它接受一个数组(table)作为参数,并默认从下标1开始返回数组的所有元素
do
    arrayData = {"a","b","c","d","e"}
    print(arrayData) -- print the address of the arrayData
    print(table.unpack(arrayData)) -- print all the elements of the arrayData
    print(table.unpack(arrayData, 2)) -- print the second to end elements of the arrayData
    print(table.unpack(arrayData, 1, 3)) -- print between first to third elements of the arrayData
end

注意:在Lua5.1中,unpack是全局函数,可以直接使用,但是在Lua5.2中,unpack被移到table.unpack,所以在Lua5.2以后要用table.unpack替代unpack。
如果遇到数组下有nil,或者有字母key的时候
local info={1,2,3,nil,5,p=6}
local a,b,c,d,e,f=unpack(info)
print(a,b,c,d,e,f)输出结果:1   2   3   nil    5   nil
页: [1]
查看完整版本: Unity学习路线-理论知识部分-Lua-Lua其他-unpack函数