如何从最终迭代Lua表?

前端之家收集整理的这篇文章主要介绍了如何从最终迭代Lua表?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何从末尾迭代一个简单的Lua表,即 a sequence

想要的行为示例:

local mytable = {'a','b','c'}
for i,value in reversedipairs(mytable) do
    print(i .. ": " .. value)
end

应该输出

3: c
2: b
1: a

如何实现reverseipairs?

解决方法

感谢@Piglet,获取有用的链接.
local function reversedipairsiter(t,i)
    i = i - 1
    if i ~= 0 then
        return i,t[i]
    end
end
function reversedipairs(t)
    return reversedipairsiter,t,#t + 1
end

实际上,我想出了一个更简单的方法

local mytable = {'a','c'}
for i = #mytable,1,-1 do
    value = mytable[i]
    print(i .. ": " .. value)
end

猜你在找的Lua相关文章