Golang(变参函数)

变参函数是指可以接受可变数量的参数的函数。
语法 如果一个函数的最后一个参数由 ...T 表示,则表示该函数可以接受任意数量的类型为 T 的参数。...T 在内部表示类型为 []T 切片。
请注意:只有函数的最后一个参数才能指定为可变参数。
如果没有给可变参数传递任何值,则可变参数为 nil 切片,长度和容量都是0。
传递切片给可变参数

package mainimport ( "fmt" )func find(num int, nums ...int) { fmt.Printf("type of nums is %T\n", nums) found := false for i, v := range nums { if v == num { fmt.Println(num, "found at index", i, "in", nums) found = true } } if !found { fmt.Println(num, "not found in ", nums) } fmt.Printf("\n") } func main() { nums := []int{89, 90, 95} find(89, nums...) }

【Golang(变参函数)】这里有一个语法糖用来将切片传递给变参函数:可以在切片后面加 ...,这样会将切片展开为其中的各个元素并将它们传递给变参函数。

    推荐阅读