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的值.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值