大家好我又回来了! 今天是学习gglua的第四课
我们是今天来学习什么呢?
今天要介绍的是lua的循环 (while and for)
那么我们在了解这两个循环之前 先来看看lua中的真值和假值
那么真代表什么呢?假又代表什么呢?
介绍
- 除false 和 nil 以外都为真
- 假同理只有 false 和 nil 为假别的都为真
这里举几个例子
- true 真
- 1 真
- {} 真
- “教师” 真
- false 假
- nil 假
那么我们现在开始学习循环
while
while循环的格式 while 真/假 do end 真就会循环
例如:
while true do
print("教学")
end
我们上面说了真值就会循环 所以我们这里的true就会无限循环
也可以这样
a=0
while a<10 do
a=a+1
print("a的值为"..a)
end
打印结果为 a的值为1-a的值为10
从1到10循环10次
我们也说过了 当while 这里为真就会循环 当然我们也说过了真于假 那么我们就还可以这样写
var="白"
while var do
print(a)--这样也会无限循环
end
这里无限循环是为什么呢?我们说了除了false与nil都为真 那么我们这里的字符串白 也为真 所以也会无限循环
for
for循环一般用来遍历数组 这里列出一段代码
tab={1,122,1,1,2,234,23213}
for i=1,#tab do
print(tab[i])
end
这里我们定义了一个数组 tab 使用for循环遍历了这个数组
那么我们这里的i=1怎么来理解呢?
首先i为变量 也就是说只要在符合变量的声明规则的前提下可以自己改为别的
后面的1是我们for循环的初始值 他在到达结束值的时候结束循环
那我们这里的 #tab 怎么理解呢?
#我们以前的课说过了详情可以回去查看 而我们这里的#tab对应的就是结束值
其实还有一个步进 这里没写 没写的话lua会默认为+1 也就是每次循环 i+1
如果需要改步进可以参考这里 for i=1,10,2 do 这行代码步进就为2 也就是每次循环 i+2
这里两个循环怎么选择呢 这边推荐在知道循环次数的时候使用for循环 反之如果不清楚循环次数则使用while循环