1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
package main import "fmt" // Here's a function that will take an arbitrary number // of `ints` as arguments. func sum(nums ...int) { fmt.Print(nums, " ") total := 0 for _, num := range nums { total += num } fmt.Println(total) } func main() { // Variadic functions can be called in the usual way // with individual arguments. sum(1, 2) sum(1, 2, 3) // If you already have multiple args in a slice, // apply them to a variadic function using // `func(slice...)` like this. nums := []int{1, 2, 3, 4} sum(nums...) } |
输出的值:
1 2 3 |
[1 2] 3 [1 2 3] 6 [1 2 3 4] 10 |
go 的变参函数
有疑问加站长微信联系(非本文作者)