共计 731 个字符,预计需要花费 2 分钟才能阅读完成。
导读 | 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址。 |
在 Lua 中迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素。Lua 中的迭代器可以分为泛型 for 迭代器、无状态的迭代器和多状态的迭代器。
泛型 for 迭代器
说明
泛型 for 在自己内部保存迭代函数,实际上它保存三个值:迭代函数、状态常量、控制变量。泛型 for 迭代器提供了集合的 key/value 对。
语法
for k, v in pairs(t) do
print(k, v)
end
案例
泛型 for 迭代器
泛型 for 迭代器遍历数组
#!/usr/bin/lua
print("haicoder(www.haicoder.net)\n")
array = {"Hello", "HaiCoder", "Lua"}
for k, v in ipairs(array)
do
print(string.format("Key = %d, Value = %s", k, v))
end
程序运行,控制台输出,如下图:
我们可以看到,我们使用了泛型 for 迭代器遍历了数组元素。
Lua 迭代器总结
迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址。
在 Lua 中迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素。Lua 中的迭代器可以分为泛型 for 迭代器、无状态的迭代器和多状态的迭代器。
泛型 for 在自己内部保存迭代函数,实际上它保存三个值:迭代函数、状态常量、控制变量。泛型 for 迭代器提供了集合的 key/value 对。
正文完
星哥说事-微信公众号
![post-qrcode](https://www.xgss.net/wp-content/uploads/2023/07/二维码-微信公众号256x256.jpg)