可变参数

简介: Lua函数是主要的抽象机制,用于执行任务或计算值。它们可以接受可变数量的参数,如在`add(...)`函数中所示,通过`...`表示。可变参数可以存储在数组中,如`arg={...}`,并用于计算,如在`average(...)`函数计算平均值的例子中,该函数接收多个数并返回其平均值。当调用`average(10,5,3,4,5,6)`时,输出显示传入了6个数,平均值为5.5。

Lua 函数

在Lua中,函数是对语句和表达式进行抽象的主要方法。既可以用来处理一些特殊的工作,也可以用来计算一些值。

Lua 提供了许多的内建函数,你可以很方便的在程序中调用它们,如print()函数可以将传入的参数打印在控制台上。

Lua 函数主要有两种用途:

1.完成指定的任务,这种情况下函数作为调用语句使用;
2.计算并返回值,这种情况下函数作为赋值语句的表达式使用。

可变参数

Lua 函数可以接受可变数目的参数,和 C 语言类似,在函数参数列表中使用三点 ... 表示函数有可变的参数。

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
我们可以将可变参数赋值给一个变量。

例如,我们计算几个数的平均值:

实例
function average(...)
result = 0
local arg={...} --> arg 为一个表,局部变量
for i,v in ipairs(arg) do
result = result + v
end
print("总共传入 " .. #arg .. " 个数")
return result/#arg
end

print("平均值为",average(10,5,3,4,5,6))
以上代码执行结果为:

总共传入 6 个数
平均值为 5.5

相关文章
|
3天前
|
C++
c++函数参数
c++函数参数
25 0
|
3天前
|
C语言
可变参数
Lua函数用于任务执行和值计算,支持可变参数,如`add(...)`,参数`...`表示变长参数列表。在函数内部,`{...}`转化为数组,可用于遍历和操作所有参数。例如,`add(3,4,5,6,7)`返回25。
|
3天前
函数参数
函数参数。
27 0
|
8月前
|
Java C++
C++可变参数
C++可变参数
41 0
|
3天前
可变参数传入数组
可变参数传入数组
18 0
|
9月前
|
C++
C和C++中的可变参数(上)
C和C++中的可变参数(上)
67 0
|
11月前
|
NoSQL 编译器 Shell
C++可变参数使用总结
C++可变参数使用总结
python函数不能传可变参数
python函数不能传可变参数
|
Java
一文学会java方法重载,可变参数
1.概述 重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。 每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。 最常用的地方就是构造器的重载。
133 0
|
PHP 开发者
可变参数|学习笔记
快速学习可变参数
73 0
可变参数|学习笔记