【发布时间】:2020-10-17 22:05:12
【问题描述】:
我已经为我的记分牌制作了一个这样的 LUA 表:
Score.Ranks = {}
Score.Ranks["superadmin"] = {name = "Boss", col = Color(183, 109, 253) }
Score.Ranks["operator"] = {name = "Chief", col = Color(254, 129, 1) }
Score.Ranks["commander"] = {name = "Commander", col = Color(222, 54, 54) }
Score.Ranks["moderator"] = {name = "Director", col = Color(53, 225, 227) }
我想对此表进行排序,以便“名称”在我的记分板上显示时按以下顺序排序:
Boss
Director
Commander
Chief
我该怎么做?
【问题讨论】:
-
有一个小争议:您是要按“名称”字段排序还是手动排序?因为在您的示例中,“导演”应该按字母顺序排在最后。
-
我想按名称字段或超级管理员操作员指挥官字段排序,以通常设置的为准。
-
您无法真正对哈希表进行排序。至少不是 lua 对它们的实现。所以“这样对'名称'进行排序”是没有意义的。不知道记分牌是如何显示的。如果你想要特定的顺序,只需使用数组。
-
你的排序对我来说没有意义。您按什么排序以使“老板”首先出现,是名字还是等级?为什么“指挥官”后面会出现“指挥官”?如果你脑子里有什么东西让这件事发生,那就需要把它拼出来。