成对打印的价值问题? LUA

时间:2017-06-04 14:21:31

标签: arrays class printing lua lua-table

出于某种原因,似乎被退回的国家都是成对返回的?如何更改代码以便它只返回“欧洲”的国家一次?

gci | foreach -Begin {$x=28 } -process { $x++; [pscustomobject]@{BaseName=$_.BaseName; FullName=$_.FullName; x=$x}}

1 个答案:

答案 0 :(得分:1)

我不确定您要使用此代码完成什么,但要回答您的问题:

function newcountry(continent,country)
    local object = {}
    object.continent = continent
    object.country = country
    local list = {}
    if object.continent == "Europe" then
        table.insert(list, object.country)
        print(object.country)
    end
    return object
end

此代码仅打印一次欧洲国家/地区。当那里有循环时,它会两次打印国家/地区的名称,因为它为object表(continentcountry的每个元素执行了此操作,因此两次)。

Generic for loops Lua编程(第一版)中。

我还想指出list目前毫无用处。它不会被退回并保持在当地。最重要的是,每次拨打newcountry时,都会创建 list。它们都是唯一的 - 国家/地区对象添加到单个列表中。但同样 - 我不知道你想要完成什么。