篇首语:本文由小编为大家整理,主要介绍了Lua遍历table相关的知识,希望对你有一定的参考价值。
参考技术A Lua中遍历table主要有四种方式,各有各的不同本文会以vector / map / set 这三种数据类型的角度来梳理 table 支持的不同遍历方式。
table as array / vector
一般,C/C++中的 array / vector (下文简称 vector) 是没有 key。但是在 lua 中使用了 table 这种通用结构,就引入了 key 的问题。
在这里,把想用做 vector 的 table,做一个非常重要的约定:1 初始,key 连续。由于 table 的自由度很高,这个需要开发者自己约束。
---- 新建
t = {"A", "BB", "CCC"} -- 默认的key就是1初始且连续-- 或者t = {} -- 建立一个空的t[1] = 1t[2] = 2t[3] = 3-- 或者t = { [1] = 1, [2] = 2, [3] = 3, -- 这里逗号可有可无}
---- 赋值
---- 遍历
table as map / linked list
table as set
table as queues (队列,先进先出,不做介绍,请参考原文)
请参考:https://www.lua.org/pil/11.4.html
参考
http://blog.51cto.com/rangercyh/1032925
https://www.lua.org/pil/11.html
以上是关于Lua遍历table的主要内容,如果未能解决你的问题,请参考以下文章