Lua 中的pairs() 和ipairs() 有什么区别?
在Lua中,当我们想用for循环遍历给定的表时,我们同时使用thepairs()和ipairs()函数。这两个函数都返回键值对,其中键是元素的索引,值是存储在该索引表中的元素。
虽然它们都有一些相似之处,但也很高兴知道它们有一些我们应该注意的非常显着的差异。
pairs()andipairs()函数之间的第一个区别是pairs()函数不维护键顺序,而ipairs()函数肯定会。
示例
考虑下面显示的例子-
u={}
u[1]="a"
u[3]="b"
u[2]="c"
u[4]="d"
u["aa"] = "zz"
u[7] = "e"
for key,value in ipairs(u) do print(key,value) end
print(“---”)
for key,value in pairs(u) do print(key,value) end在上面的例子中,ipairs()函数将按数字顺序打印键的顺序,而pairs()函数不保证它。
此外,如果我们更仔细地查看示例,我们将看到第二个区别,即该ipairs()函数不返回表中存在的非数字键。
输出结果
考虑参考输出。
1 a 2 c 3 b 4 d --- 1 a 2 c 3 b 4 d 7 e aa zz
热门推荐
10 新人红包祝福语简短精辟
11 幼师给毕业祝福语简短
12 生日高考祝福语妹妹简短
13 下飞机祝福语简短英文
14 元宵发客户祝福语简短
15 爸妈金婚文案祝福语简短
16 新郎朋友红包祝福语简短
17 虎年五一祝福语大全简短
18 出阁宴祝福语姐姐简短