当我在工作中使用lua进行开发时,发现在lua中有4种方式遍历一个table,当然,从本质上来说其实都一样,只是形式不同,这四种方式分别是:
for key, value in pairs(tbtest) do
XXX
end
for key, value in ipairs(tbtest) do
XXX
end
for i=1, #(tbtest) do
XXX
end
for i=1, table.maxn(tbtest) do
XXX
end
前两种是泛型遍历,后两种是数值型遍历。当然你还会说lua的table遍历还有很多种方法啊,没错,不过最常见的这些遍历确实有必要弄清楚。
这四种方式各有特点,由于在工作中我几乎每天都会使用遍历table的方法,一开始也非常困惑这些方式的不同,一段时间后才渐渐明白,这里我也是把自己的一点经验告诉大家,对跟我一样的lua初学者也许有些帮助(至少当初我在写的时候在网上就找了很久,不知道是因为大牛们都认为这些很简单,不需要说,还是因为我笨,连这都要问)。
首先要明确一点,就是lua中table并非像是C/C++中的数组一样是顺序存储的,准确来说lua中的table更加像是C++中的map,通过Key对应存储Value,但是并非顺序来保存key-value对,而是使用了hash的方
您可能关注的文档
- 2011某公司年会方案汇总.ppt
- 2011年DOP触摸屏培训汇总.ppt
- IBT听力---lecture词汇预案.doc
- IChOLand07-04预案.doc
- IFIX_模拟输入块(AI)字段速查预案.doc
- IGBT调速器培训1预案.doc
- iOS7人机交互界面指南预案.doc
- 2011年妊娠高血压疾病妊娠剧吐汇总.ppt
- 2016届高考生物大一轮复习:必修1第2单元细胞的基本结构与物质运输-5细胞膜与细胞核范例.ppt
- I单元电场预案.doc
- 力士乐数控系统MTX NC固定循环.docx
- 发格数控系统40_i_P数显表安装操作手册.docx
- T∕SDJZXH 005-2025 建设工程智慧监理建设评价标准.pdf
- FANUC发那科数控系统FANUC OPEN CNC 操作说明书(DNC 运行管理软件.docx
- T∕CASMES 661-2026 停车场(库)公共设施配建导则.pdf
- T∕GZBECTA 007-2025 民用建筑碳排放计算指南.pdf
- FANUC发那科数控系统16i 18i 160i 180i - Model A Maintenance.pdf
- T∕CADP 9-2023 高路堤路段与天然气管道交叉工程 通道涵技术要求.pdf
- 发格数控系统8055参数备份和恢复.pdf
- Mazak马扎克数控系统马扎克(Mazak)FMS介绍.docx
原创力文档

文档评论(0)