【发布时间】:2011-10-07 06:07:51
【问题描述】:
我无法让它工作:
tbl = {
[1] = { ['etc2'] = 14477 },
[2] = { ['etc1'] = 1337 },
[3] = { ['etc3'] = 1336 },
[4] = { ['etc4'] = 1335 }
}
for i = 1, #tbl do
table.sort(tbl, function(a, b) return a[i] > b[i] end)
print(tbl[i] .. '==' .. #tbl)
end
收到此错误:尝试比较两个 nil 值
这是table value sorting in lua的后续内容
【问题讨论】:
-
我认为您不想在循环内对表格进行排序。另外,您究竟是如何对其进行排序的?
a[i]为 nil,因为a是一个带有字符串索引的表。 -
欢迎来到 SO Lucas。当您需要澄清您的问题时,请使用帖子下方的编辑按钮,而不是打开新问题。我将把另外两个标记为这个重复,因为我相信这个 Q&A 最好地解决了这个问题。