Lua 编程语言流程控制语句通过程序设定一个或多个条件语句来设定。在条件为 true 时执行指定程序代码,在条件为 false 时执行其他指定代码。
if (成立) then
执行体1
else
执行体2
end
a = 1;
if (a == 1) then
a = a + 1;
else
a = a + 2;
end
print(a);
在Lua中,函数是对语句和表达式进行抽象的主要方法。既可以用来处理一些特殊的工作,也可以用来计算一些值。
Lua 提供了许多的内建函数,你可以很方便的在程序中调用它们,如print()函数可以将传入的参数打印在控制台上。
Lua 函数主要有两种用途:
默认local
optional_function_scope function function_name( argument1, argument2, argument3..., argumentn)
function_body
return result_params_comma_separated
end
function 函数名(参数列表)
函数体;
return 返回值
end
function max(arg1,arg2)
local result = arg1;
if (arg1 < arg2) then;
result = arg2;
end;
return result;
end;
print(max(1,2));
function findMax(arr)
local index = 1;
local value = arr[index];
for k,v in pairs(arr)
do
if (v > value) then
index = k;
value = v;
end
end
return index,value;
end
index,value = findMax({1,3,5,7,9});
print("最大值索引:"..index.."最大值:"..value);
function sum(...)
local arg = {...};
local result = 0;
for k,v in pairs(arg)
do
result = result + v;
end
return result;
end
function avg(...)
local arg = {...};
local result = 0;
local count = #arg;
for k,v in pairs(arg)
do
result = result + v;
end
return result/count;
end
print("avg ="..avg(1,2,3,4,5,6));
function fmtPrint(fmt,...)
io.write(string.format(fmt,...))
end
fmtPrint("%s\n","helloworld")
fmtPrint("%d + %d = %d\n",1,1,2)
function ff4(...)
a,b,c = select(3,...)
return a,b,c;
end
print(ff4(1,2,3,4,5,6,7,8,9));