lua generic for 循环的使用

简介:
lua的除了numeric for循环, 还有一个比较实用的循环方法.
With proper iterators, we can traverse almost anything in a readable fashion. The standard
libraries provide several iterators, which allow us to iterate over the lines of a
file (io.lines), the pairs of a table (pairs), the entries of a sequence (ipairs),
the words of a string (string.gmatch), and so on.
Of course, we can write our own iterators. 

遍历table对象的generic for循环语法举例 :
> days = {"Sun","Mon","Tue","Wen","Thu","Fri","Sat"}
> for k,v in pairs(days) do
>> print(k)
>> print(v)
>> end
1
Sun
2
Mon
3
Tue
4
Wen
5
Thu
6
Fri
7
Sat

使用这种方法初始化一个K-V类型的table是比较方便的.

> kvdays = {}
> for k,v in pairs(days) do
kvdays[v] = k
end
> print(kvdays["Sun"])
1
> print(kvdays["Sat"])
7

同样, 尽量不要在循环内修改自动生成的本地变量k,v的值.
相关文章
Lua 循环
Lua 支持多种循环机制:while基于条件重复,for分数值和泛型形式,还有repeat-until直到条件满足。循环体可嵌套,用于复杂重复操作。
|
12月前
|
存储 算法 JavaScript
[✔️]lua for循环
[✔️]lua for循环
75 0
|
12月前
|
存储 编译器 索引
lua语言——循环
lua语言——循环
90 0
|
XML Java 数据格式
【Lua基础 第3章】变量、赋值语句、索引、lua中的循环、循环控制语句
lua 中的变量、赋值语句、索引、lua中的循环、循环控制语句
119 0
【Lua基础 第3章】变量、赋值语句、索引、lua中的循环、循环控制语句
|
数据采集 大数据 开发者
Lua 语法数值 for 循环与泛型 for 循环|学习笔记
快速学习 Lua 语法数值 for 循环与泛型 for 循环
69 0
|
数据采集 大数据 开发者
Lua 语法 while 循环与 repeat 循环|学习笔记
快速学习 Lua 语法 while 循环与 repeat 循环
202 0
Lua 语法 while 循环与 repeat 循环|学习笔记
|
4月前
|
存储 NoSQL 关系型数据库
使用lua脚本操作redis
使用lua脚本操作redis
51 0