lua 中ipairs 和 pairs 区别

来源:互联网 发布:plc模块化编程实例 编辑:程序博客网 时间:2024/06/03 11:21
ipairs 和pairs在lua中都是遍历tbale的函数但是两者有区别
1.pairs遍历table中的所有的key-vale 而ipairs会根据key的数值从1开始加1递增遍历对应的table[i]值
a = {[1] = "a1", [2] = "a2", [3] = "a3", [5] = "a4", [6] = "a5",}for key, value in ipairs(a) do  print(key, value)end结果:1a12a23a3a = {[1] = "a1", [2] = "a2", [3] = "a3", [5] = "a4", [6] = "a5",}for key, value in pairs(a) do  print(key, value)end结果:6a52a23a31a15a4

有一个要注意的是pairs()的一个问题,用pairs()遍历是[key]-[value]形式的表是随机的,跟key的哈希值有关系

转自  http://blog.163.com/liwei1987821@126/blog/static/172664928201310710338912/

0 0