lua中有四种主要的遍历一个table的方法。

第一种方法:

1 for key, value in pairs(testtb) do
2     xxxx
3 end

这种方法是按照key哈希后的顺序遍历的。比如下面代码的输出,并不是按顺序的

testtb = {
    [1] = 1;
    [2] = 2;
    [3] = 3;
    [5] = 5;
    [6] = 6;
    ["w"] = "w";
}
for key, value in pairs(testtb) do
    print(key, value)
end
[[ 输出
6    6
2    2
3    3
1    1
5    5
w    w
]]

 

第二种方法:

for key, value in ipairs(testtb) do 
    xxx
end

这种方法提供了按照key的大小顺序来遍历,但是必需要求table中的key是顺序的,而且必需是从1开始,直到key不连续为止

 

第三种方法:

for i = 1, #(testtb) do
    xxx
end

#(table),获取的是table中,整型key从1开始,直到key不连续为止的key的个数

 

第四种方法:

for i=1, table.maxn(testtb) do
    xxx
end

table.maxn获取的是table中,整型key的最大值。

 

相关文章:

  • 2021-06-25
  • 2021-09-29
  • 2021-09-07
  • 2022-12-23
  • 2021-10-16
  • 2021-09-07
  • 2021-09-07
  • 2021-09-07
猜你喜欢
  • 2021-07-05
  • 2022-12-23
  • 2021-07-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-13
相关资源
相似解决方案