可变参数函数(Variadic functions)是 Go 中一种允许接受任意数量参数的函数。fmt.Println
就是一个常见的可变参数函数的例子。
package main
import "fmt"
// 以下是一个可以接收任意数量整数作为参数的函数。
func sum(nums ...int) {
fmt.Print(nums, " ")
total := 0
// 在函数内部,nums 的类型等同于 []int。我们可以调用 len(nums) 获取长度,用 range 遍历等操作。
for _, num := range nums {
total += num
}
fmt.Println(total)
}
func main() {
// 可变参数函数可以像普通函数一样使用单个参数进行调用。
sum(1, 2)
sum(1, 2, 3)
// 如果你已经有一个包含多个参数的切片,可以使用 func(slice...) 的形式将它们应用于可变参数函数,如下所示。
nums := []int{1, 2, 3, 4}
sum(nums...)
}
运行结果:
$ go run variadic-functions.go
[1 2] 3
[1 2 3] 6
[1 2 3 4] 10
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。