当定义表键,为什么会以随机顺序插入?

问题描述 投票:1回答:1

虽然在Love2d项目时,我注意到,定义表时用钥匙,并把说另一个表的表,在一个循环中,被插入随机顺序表。

为了验证这一点,我做了一个简短的脚本,希望能解释我的困境更好一点。我的第一个假设是,因为这些密钥的任何位置插入我的可用内存,虽然我不知道。我从来没有遇到过在此之前,任何人有什么想法?

enter image description here

random lua key lua-table
1个回答
3
投票

的Lua实现表作为哈希表,因此它们遍历时的表观随机顺序。这是由设计,使访问表可以在固定的时间里完成。

如果为了对你很重要,使用循序索引和复杂的值,如

t[1] = { key="CA", value="California" }
t[2] = { key="TX", value="Texas" }
© www.soinside.com 2019 - 2024. All rights reserved.