arrays - 如何将已排序的表索引作为字符串返回?

标签 arrays sorting lua lua-table

我对使用 LUA 和 LUA 表非常陌生。

我想提供的例子是,我想知道他/她的银行账户中存款最少的人的姓名:

BankAccount = {}
BankAccount["Tom"] = 432
BankAccount["Henry"] = 55
BankAccount["Kath"] = 875

table.sort(BankAccount)
print("BankAccount Element at index 1 is ", BankAccount[1])

目标:我希望它返回字符串“Henry”。

我遇到的问题是我不确定如何以这样的方式构建表格,以便它根据值返回字符串。我还看到人们这样做:

BankAccount = {
    {"Tom", 432},
    {"Henry", 55},
    {"Kath", 875},
}

所以我不确定如何继续。感谢您的帮助。

最佳答案

您无法对第一个表进行排序,因为它是一个没有任何特定顺序的哈希表,但如果您提供排序功能,则可以对第二个表进行排序:

BankAccount = {
    {"Tom", 432},
    {"Henry", 55},
    {"Kath", 875},
}
table.sort(BankAccount, function(a, b) return a[2] < b[2] end)
print(BankAccount[1][1]) -- should print Henry

table.sort 将一个函数作为第二个参数,该函数将接收两个正在排序的值并需要返回 true/false 值,指示第一个元素是否需要在第二个元素之前(参见 table.sort ) .

关于arrays - 如何将已排序的表索引作为字符串返回?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73682106/

相关文章:

mysql - 根据字符串类型的月份对 SQL 数组进行排序

.net - 使用 NLua, "require"关键字如何工作

lua - 了解如何访问lua中的对象

javascript - 如何使用 `defineProperty` 创建只读数组属性?

javascript - Ractive.js 将选中的值复选框放入数组中

ios - 访问另一个 Controller 中的数组

css - CSS 文件排序重要吗?如果重要,为什么?

javascript - 重新构造对象数组的最佳方法是什么?

javascript - Knockout.js:对多个键进行排序

lua - Lua 是否像 Swift 或 C# 中那样具有 variable?.function() 之类的东西?