在lua中,定义函数的形式是:
'''
function func(a,b) --func是函数名,在里面写关于函数的实现,a,b是函数的参数
end
'''
将函数和table结合起来对于在不同的情况下使用不同的函数,是有很大的帮助的
例如
--写一个加减乘除的东西:
'''
local l_func = {
[1] = function(a,b)
return a + b
end,
[2] = function(a,b)
return a - b
end,
[3] = function(a,b)
return a * b
end,
[4] = function(a,b)
if b ~= 0 then
return a / b
else
return 0
end
end
}
local num = l_func[1](4,2) --调用函数得到两个数的和
'''
在使用某一个数据的时候,首先就是要确定数据的存在。这样能保证程序不会存在崩溃。
lua中的函数一般包括是有返回值的和没有返回值的,
有返回值的函数又包括一个返回值,和多个返回值的,不管是多少个返回值,总的思想是给一个(或多个)值,得
到一个(或)多个值,函数的实现就是根据给的参数,以及需求,对数据进行处理,最后得到数据。
一个返回值的例子
'''
function addTwoNumber(a,b)
return a + b
end
function getnumber(a,b)
return a + b,a,b
end
'''
以上两个函数,第一个函数返回一个值,第二个函数返回三个值,在调两个函数相加的时候,两个函数都是可以的
。
local num = getnumber(4,5),只会得到两个数的相加,另外的两个返回值没有变量去接收他,故不考虑。
local a,b,c = addTwoNumber(4,5),因为只返回一个值,所以把函数返回的值赋值给a,其余的两个变量的值为nil
没有返回值类型的函数一般是在函数内部对一系列操作的集合。