go语言中的可变参数语法为 funcname(param1, param2, ..., paramn ...type),其中 param1 至 paramn 是固定参数,type 是可变参数的类型。可变参数只能是切片、数组或可变参数本身,如 ...string、...[]int、...func(string) int。以下案例展示了接受可变参数并在控制台打印所有参数的函数:package mainimport "fmt"func printvarargs(args ...string) { for _, arg := range args { fmt.println(arg) }}func main() { printvarargs("hello", "world", "!", "this", "is", "an", "example") },输出结果为 helloworld!thisisanexample。
Go 语言中可变参数的语法和类型要求
可变参数是一种允许函数接受数量可变的参数的功能。Go 语言中,可变参数使用 ...
操作符表示。
语法
可变参数必须位于参数列表的最后位置。其语法如下:
funcName(param1, param2, ..., paramN ...type)
其中:
param1
,param2
, ...,paramN
是固定参数。type
是可变参数的类型。
类型要求
可变参数只能是切片、数组或可变参数本身(...type
)。例如:
funcName(param1, param2 ...string)
funcName(param1, param2 ...[]int)
funcName(param1, param2 ...func(string) int)
实战案例
以下示例展示了一个接受可变参数并在控制台打印所有参数的函数:
package main
import "fmt"
// printVarArgs 打印可变参数
func printVarArgs(args ...string) {
for _, arg := range args {
fmt.Println(arg)
}
}
func main() {
// 调用 printVarArgs 函数并传入可变参数
printVarArgs("Hello", "World", "!", "This", "is", "an", "example")
}
输出:
Hello
World
!
This
is
an
example