1. if ... then ... elseif ... then ... else ..... end
例如:
local tmp = 0
if tmp > 18 then
print("已成年")
elseif tmp == 18 then
print("即将成年")
else
print("未成年")
end
2. while ... do ... end
例如:(注,lua中没有++, +=运算符)
local tmp = 0
local sum = 0
while tmp < 100 do
sum = sum + tmp
tmp = tmp + 1
end
3.repeat ... until ...
例如:
repeat
line = io.read() --
local line = io.read() --
加了local将会导致print函数报错,因为外面引用不到循环体内的局部变量
until line ~= "" --
此处不管是局部变量还是全局变量,都还能访问,lua5.1中加入的
print(line)
注:循环体内定义的变量作用域包含条件测试
4.for ... do ... end
例如:(两种形式)
数字型:
-- for i = exp1, exp2, exp3 do ... end (exp3是步长值,可以是负数)
for i = 1, 10 do
print(i)
end
for i = 10, 1, -2 do
print(i)
end
泛型:通过一个迭代器来遍历所有值
local arr = {"sasa", "sasa", "dssad", "dsdasd"}
for k, v in ipairs(a) do
--pairs(), ipairs()
print(k, v)
end
5.break 与 return
break用于跳出循环,用于while ,repeat , for循环中
return用于函数返回值