Golang可变参数的用法(附带实例)
在 Go 语言中,定义函数时可以不固定参数的数量,这样的参数叫可变参数。
可变参数的函数可以不限制参数的数量,设置可变参数需要在参数的数据类型前添加 3 个点(...),定义的参数以切片形式表示。代码如下:
如果需要设置不同类型的参数,可以在定义函数时将参数的数据类型定义为 interface 类型。代码如下:
可变参数的函数可以不限制参数的数量,设置可变参数需要在参数的数据类型前添加 3 个点(...),定义的参数以切片形式表示。代码如下:
package main import "fmt" func sum(num ...int) { //定义 sum()函数 result := 0 for _, value := range num { result += value } fmt.Println(result) } func main() { sum(1, 3, 5, 7) //调用 sum()函数并传递参数 sum(2, 4, 6) }运行结果如下:
16
12
如果需要设置不同类型的参数,可以在定义函数时将参数的数据类型定义为 interface 类型。代码如下:
package main import "fmt" func iterate(num ...interface{}) { //定义 iterate()函数 for _, value := range num { fmt.Println(value) } } func main() { iterate(1, 3, 5, 7) //调用 iterate()函数并传递参数 iterate("Tony", "Kelly", "Jerry") //调用 iterate()函数并传递参数 }运行结果如下:
1
3
5
7
Tony
Kelly
Jerry