脚本专栏 
首页 > 脚本专栏 > 浏览文章

Lua中遍历数组和table的4种方法

(编辑:jimmy 日期: 2025/5/15 浏览:3 次 )

方法一,可以用for来遍历:
复制代码 代码如下:
do 
    table_week = { 
    "w", 
    "e", 
    "r", 
    "t", 
    "y", 
    "u", 
    "i", 
    } 
 
    for i = 1, #table_week do 
        print(table_week[i]) 
    end 
end 

#后面接一个数组或者tabe来遍历它,i是该table或者数组的起始下标。

方法2:
复制代码 代码如下:
do 
    table_week = { 
    "w", 
    "e", 
    "r", 
    "t", 
    "y", 
    "u", 
    "i", 
    } 
    for i, v in pairs(table_week) do 
        print(i) 
    end 
end 

这种是采用迭代器的方式遍历的,i为下标,v为table或者数组的值。

方式3:
复制代码 代码如下:
do 
    table_week = { 
    "w", 
    "e", 
    "r", 
    "t", 
    "y", 
    "u", 
    "i", 
    } 
    for i in pairs(table_week) do 
        print(i); 
    end 
end 

i为table或者数组的下标。

方式4:
复制代码 代码如下:
do 
table_view = { 
    "w", 
    "e", 
    "r", 
    color1 = "red", 
    color2 = "blue", 
    {"a1", "a2", "a3"}, 
    {"b1", "b2", "b3"}, 
    {"c1", "c2", "c3"}, 

for i, v in pairs(table_view) do 
    if type(v) == "table" then 
        for new_table_index, new_table_value in pairs(v) do 
            print(new_table_value) 
        end 
    else 
        print(v) 
    end 
end 
 
end 

注:type(v)
功能:返回参数的类型名("nil","number", "string", "boolean", "table", "function", "thread", "userdata")

上一篇:Lua table的concat方法使用实例
下一篇:Lua中的弱引用介绍
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。