所以如果我有一张颜色表:

colour["red"] = 1
colour["blue"] = 4
colour["purple"] = 5

我想将红色添加到蓝色,我可以轻松获得红色和蓝色的数值,但是如果值为 5,我可以在不扫描整个表格的情况下让它返回“紫色”吗?

最佳答案

如果颜色编号是唯一的,您将需要一个包含哈希和数组部分的表。例如:

colour["purple"] = 5
colour[5] = "purple"

您可以创建一个有助于填充表格的小辅助函数,例如:
function addColour(coltab, str, val)
    coltab[str] = val
    coltab[val] = str
end

关于Lua 使用索引或值搜索表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16776694/

10-12 20:36