赋值语句
基本赋值
a = "hello" .. "world"
多语句赋值
x, y = y, x -- swap 'x' for 'y'
a, b, c = 0 -- a=0,b跟c为nil
局部变量
local创建一个局部变量,可以通过do…end语句来控制变量范围
do
local a2 = 2*a
local d = sqrt(b^2 - 4*a*c)
x1 = (-b + d)/a2
x2 = (-b - d)/a2
end -- scope of 'a2' and 'd' ends here
流程控制
lua中,false和nil为假,true和非nil为真
lua中提供了以下流程控制语句
--if
if(布尔表达式)
then
--[ 在布尔表达式为 true 时执行的语句 --]
end
--if...else...
if(布尔表达式)
then
--[ 布尔表达式为 true 时执行该语句块 --]
else
--[ 布尔表达式为 false 时执行该语句块 --]
end
if conditions then
then-part
elseif conditions then
elseif-part
--if...if
if( 布尔表达式 1)
then
--[ 布尔表达式 1 为 true 时执行该语句块 --]
if(布尔表达式 2)
then
--[ 布尔表达式 2 为 true 时执行该语句块 --]
end
end
循环
while循环
while(condition)
do
statements
end
for循环
for循环分两类,一类是数值循环,一类是范式循环
数值循环
for var=exp1,exp2,exp3 do
<执行体>
end
var 从 exp1 变化到 exp2,每次变化以 exp3 为步长递增 var,并执行一次 “执行体”。
exp3 是可选的,如果不指定,默认为1。
--数值循环
for i=1,f(x) do
print(i)
end
for i=10,1,-1 do
print(i)
end
范式循环
--范式循环,打印数组a的所有值
a = {"one", "two", "three"}
for i, v in ipairs(a) do
print(i, v)
end
repeat
repeat
statements
until(condition)
循环嵌套
while(condition)
do
while(condition)
do
statements
end
statements
end
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 68813175@qq.com