3

如何在 Corona SDK/Lua 的表中获得最大值?

例如,我有这张表:

local table = {
   ["item1"] = 10,
   ["item2"] = 20,
   ["item3"] = 30,
   ["item4"] = 40,
   ["item5"] = 50
}

我必须得到 item5 及其值 50 作为答案。

4

2 回答 2

2

如果您有非数字键,那么排序将不起作用,您只需要手动遍历表来跟踪最大值及其关联键。

于 2013-07-04T03:26:43.737 回答
2
local max_val, key = -math.huge
for k, v in pairs(your_table) do
    if v > max_val then
        max_val, key = v, k
    end
end
print(key, max_val)
于 2013-07-04T04:44:48.753 回答