Lua表排序与字符串键

时间:2013-08-19 12:14:36

标签: sorting lua lua-table

我在这张桌子上需要帮助

tbl = {
    Noa={10,0,3},
    melvin={5,3,1},
    jeex={500,0,2},
    kiim={100,2,3}
}

我符合此表中的所有值,按表上的第一个值排序 示例

输出>

jeex   500 ,0,2
kiim   100 ,2,3
Noa    10,0,3
melvin 5,3,1

1 个答案:

答案 0 :(得分:0)

只有具有数字索引的表元素才有订单。您不能对键是字符串的表进行排序。所以你的第一步是创建一个实际有订单的表。您可以通过迭代当前表的元素并根据当前表中的值插入新表来实现此目的,包含键和值。

local array = {}
for key, value in pairs(tbl) do
  array[#array + 1] = {key = key, value = value}
end

一旦你有一个实际的数组,然后你就可以用table.sort对它进行排序。