表达式:a and b a为假则返回a 否则返回b, a or b a为真返回a否则返回b ,简单理解and就是先判断a a正确就继续判断b,如果b也正确返回btrue,则if(a and b) 为true ,这实际上也是&&的使用原理一样 ,如果a为假就是false直接返回a if(a and b) 就是false了 。 or 同理 ||
function Func()
local num1 =100
num2 =10
end
Func();print(num1)print(num2)
控制语句
num =75if num <60 then
print("num < 60")print(";-)")
elseif num >70 and num <75 then --elseif 不加空格,
print("num > 70 and num < 75")
elseif num <60 or num >=75 then
print("num < 60 or num >= 75")-- 打印
elseprint("num ?")--不执行了
end
--while循环
sum =0
count =1while count <=5do
sum = sum + count
count = count +1
end
print(sum)--12345
--forfor num =1,10,2doprint(num)--13579
end
for num2 =10,0,-2doprint(num2)--1086420
end
函数写法
function funcA()
local num1 =10
local num2 =20print(num1+num2)
end
funcA()--30
-- 函数返回值
function funcB()return10>100
end
a =funcB()print(a)-- false
print(funcB())-- false
function funcC()return100,200,"3"
end
num3,num4,num5 =funcC()print(num3..num4..num5)--1002003print(funcC())--1002003--省略逗号
num6,num7,num8 =funcC(),1print(num6..num7)print(num8)
function funcD(a,b,c)return a + b + c
end
result =funcD(1,2,3)print(result)print(funcD(2,2,8))--实参个数>形参个数,自动忽略
--实参个数<形参个数,自动补齐nil
--可变个数参数 ...
function funcE(...)--把可变参数构成表(数组)
local args ={...}--#:计算表长度
for i =1, #args doprint(args[i])
end
end
funcE(1,2,"Hello",4,5)