基于内部表值在Lua中对表进行排序。

目前,我在 Lua 中有一个包含另一个表的表(类似于哈希表)。它被称为 “email_table”,并且我在其中拥有我的 “person_table”。email_table 的键是 email_addresses,而 person_table 则包含有关 person 的所有信息。 目前,我正在尝试根据 person_table 中的一个值对 email_table 进行排序。不幸的是,Lua 的内置排序函数无法与这些值一起使用。我应该如何开始?

原文链接 https://stackoverflow.com/questions/10036435

点赞
stackoverflow用户734069
stackoverflow用户734069

不能对不是数组的东西进行排序

如果您的键不是单调递增的整数,那么您就无法对其进行排序。排序意味着有序,但在表的非整数键上没有排序。

如果 "email_table 的键是电子邮件地址",那么 email_table 不能被排序。您可以有另一个表,它是电子邮件地址的排序列表。但这必须是一个列表:键必须是单调递增的整数值(1、2、3、4 等等)。它们有一个显式的顺序。

2012-04-05 21:48:23