lua pairs和ipairs区别
来源:互联网 发布:极有家淘宝官网 编辑:程序博客网 时间:2024/05/16 01:56
在对lua tbl做循环处理的时候,经常会用的pairs和ipairs,两者的具体区别mark下
ipairs:
for i,v in ipairs(t) do body end
will iterate over the pairs (1,t[1]), (2,t[2]), ···, up to the first integer key absent from the table.
即 ipairs 是从t[1]开始,不断获取t[2],t[3]....直到第一个非连续整形key出现即停止。
local aa = {
[2] = "111",
[3] = "333",
[4] = "555",
}
for k,v in ipairs(aa) do
print (k,v)
end
这个执行结果是
>lua -e "io.stdout:setvbuf 'no'" "test.lua"
>Exit code: 0
因为aa[1] 为 nil直接结束循环
local aa = {
[1] = "111",
[3] = "333",
[4] = "555",
}
for k,v in ipairs(aa) do
print (k,v)
end
这个返回的结果为
>lua -e "io.stdout:setvbuf 'no'" "test.lua"
1 111
>Exit code: 0
这个aa[1]存在,aa[2]不存在即结束了循环
而对于pairs就简单多了
for k,v in pairs(t) do body end
will iterate over all key–value pairs of table t.
即 pairs(t) 返回所有的 key-value对,示例:
do
local aa = {
[1] = "111",
[3] = "333",
[4] = "555",
}
for k,v in pairs(aa) do
print (k,v)
end
end
结果如下:
>lua -e "io.stdout:setvbuf 'no'" "test.lua"
1 111
4 555
3 333
>Exit code: 0
所以,一般情况下,还是用pairs比较好些!
- lua pairs和ipairs区别
- Lua -- pairs和ipairs区别
- 【LUA学习】ipairs和pairs的区别
- Lua中 Pairs和ipairs的区别
- lua 中pairs 和 ipairs区别
- lua ipairs和pairs的区别 .
- lua 循环pairs 和 ipairs区别
- lua 中pairs 和 ipairs区别
- lua 中pairs 和 ipairs区别
- lua 中pairs 和 ipairs区别
- lua 中pairs 和 ipairs区别
- lua 中pairs 和 ipairs区别
- Lua中pairs和ipairs的区别
- lua 中pairs 和 ipairs区别
- lua 中pairs 和 ipairs区别
- LUA中ipairs和pairs的区别
- 转 lua 中pairs 和 ipairs区别
- lua 中pairs 和 ipairs区别
- Search Insert Position 查找插入的位置
- hbase的HMaster不能启动
- vs2008突然不能使用查找功能了
- 可怜人比有可怜处
- WINCE 自动休眠时间注册表项
- lua pairs和ipairs区别
- Search a 2D Matrix 杨氏矩阵查找
- 警官创非利臂单臂俯卧撑吉尼斯世界纪录
- 改变安卓背景颜色
- Selenium components
- How to Use Instruments in Xcode
- 如何取出 Map中key和value的值1
- 黑马程序员---SQL基础语句加注释
- CWaitCursor简介与使用