【读书笔记】语言基础-函数 练习(十一)

 练习1:

        解:

-- 这个unpack 会找不到
function printArrayElement(array)
    local arr = table.unpack(array)
    local len = #arr
    for i = 1 , len do
        print(arr[i])
    end
end
printArrayElement{a,b,c}

-- 用正常的遍历求出
function printArrayElement02(array)
    if #array ~= nil then
        for index, value in ipairs(array) do
            print(value)
        end
    end
end

练习2:

        解:

--使用table.pack 解析可变长参数
function getElementsExceptTheFirstOne(...)
    local arg = table.pack(...)
    local newArg = {}
    if arg.n > 0 then
        for i = 1, arg.n do
            if i ~= 1 then
                table.insert(newArg, arg[i])
            end
        end
    end
    return newArg
end

-- 使用select函数 返回可变长参数
function getElementsExceptTheFirstOne02(...)
    local newArg = {}
    for i = 1, select('#', ...) do
        if i ~= 1 then
            local curElement = select(i, ...)
            table.insert(newArg, curElement)
        end         
    end
    return newArg
end
getElementsExceptTheFirstOne02("a", "b", "c", "d")

练习3:

        解:同上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值