1.使用 # 来计算字符串的长度,放在字符串前面,如下实
2.条件判断
if(布尔表达式) then --[ 在布尔表达式为 true 时执行的语句 --] end
if(布尔表达式) then --[ 布尔表达式为 true 时执行该语句块 --] else --[ 布尔表达式为 false 时执行该语句块 --] end
if( 布尔表达式 1) then --[ 布尔表达式 1 为 true 时执行该语句块 --] if(布尔表达式 2) then --[ 布尔表达式 2 为 true 时执行该语句块 --] end end
3.循环语句
while(condition) do statements end
for var=exp1,exp2,exp3 do <执行体> end
for i,v in ipairs(a) do print(v) end
repeat statements until( condition
3.函数
myprint = function(param) print("这是打印函数 - ##",param,"##") end function add(num1,num2,functionPrint) result = num1 + num2 -- 调用传递的函数参数 functionPrint(result) end
3.3 函数返回多值
function maximum (a) local mi = 1 -- 最大值索引 local m = a[mi] -- 最大值 for i,val in ipairs(a) do if val > m then mi = i m = val end end return m, mi end
3.4 可变参数,获取可变参数的个数# 或者 select("#",...), select(n, …)访问第n个参数
function add(...) local s = 0 for i, v in ipairs{...} do --> {...} 表示一个由所有变长参数构成的数组 s = s + v end return s end print(add(3,4,5,6,7)) --->25
note 1. lua数组索引是从1开始。
2.lua的0代表true