我有一个Lua表,我正在尝试排序.表的格式如下:
tableOfKills[PlayerName] = NumberOfKills
Run Code Online (Sandbox Code Playgroud)
这意味着,例如,如果我有一个名为Robin的玩家总共有8个杀戮而另一个名为Jon的玩家共有10个杀戮,那么该表将是:
tableOfKills[Robin] = 8
tableOfKills[Jon] = 10
Run Code Online (Sandbox Code Playgroud)
我如何对这种类型的表进行排序以首先显示最高的杀戮?提前致谢!
我有一个key => value表我想在Lua中排序.键都是整数,但不是连续的(并且有意义).Lua唯一的排序函数似乎是table.sort,它将表视为简单数组,丢弃原始密钥及其与特定项的关联.相反,我基本上希望能够使用PHP的asort()功能.
是)我有的:
items = {
[1004] = "foo",
[1234] = "bar",
[3188] = "baz",
[7007] = "quux",
}
Run Code Online (Sandbox Code Playgroud)
排序操作后我想要的是:
items = {
[1234] = "bar",
[3188] = "baz",
[1004] = "foo",
[7007] = "quux",
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
编辑:根据答案,我将假设它只是我正在使用的特定嵌入式Lua解释器的一个奇怪的怪癖,但在我的所有测试中,pairs()总是按照它们被添加到的顺序返回表项桌子.(即上述两个声明将以不同方式迭代).
不幸的是,因为这不是正常的行为,看起来我无法得到我需要的东西; Lua没有内置的必要工具(当然),嵌入式环境对我来说太有限了.
不过,谢谢你的帮助!