sorting - Lua 表排序不起作用

标签 sorting lua lua-table

我有下面的程序代码,它试图对给定的列表进行排序。我尝试了各种选择,但仍然不起作用。

local List = {}    
List[143] = "143"    
List[145] = "145"    
List[120] = "120"       
List[178] = "178"   
table.sort(List, compare)

比较函数定义为
function compare(a, b)    
    if tonumber(a) < tonumber(b) then    
        return true    
    end
end

以上 table.sort 不适用于任何顺序。我只想将其排序为递增的数字顺序。如果您对此有任何想法,请帮助我。
提前致谢

最佳答案

table.sort (以及大部分 table.* 函数)仅针对类似数组的表的操作定义。这意味着具有来自 1..n 的连续整数键的表.您的 table 不符合这些标准。

关于sorting - Lua 表排序不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21115529/

相关文章:

lua - 有没有一种简单的方法可以在 Lua 中解压两个数组/可变参数?

algorithm - 对 int 数组的最佳反转计数

在 haskell 中对列表的列表进行排序

java - 交换元素

Lua:帮助函数:我可以提取函数的名称吗?

lua - table.remove()与p [#p] = nil相同,哪个更快?

lua - 尝试在 LUA 中构建唯一值表

Lua 插入表到表

algorithm - 线性时间排序

Lua:循环中的 string.gsub 模式滞后