在Go语言
[] string是字符串数组
我们还使用… string作为参数
有什么区别?
函数定义:
func f(args ...string) {}
args := []string{"a","b"} f(args)
[]string
is string array
从技术上讲,它是一个引用底层数组的切片
and we also use
...string
as parameterwhat is difference?
关于结构,没有什么真的。由两种语法产生的数据类型是相同的。
…参数语法创建一个可变参数。它将接受零个或多个字符串参数,并将它们引用为切片。
关于调用f,您可以使用以下语法将一个字符串片段传递到variadic参数中:
func f(args ...string) { fmt.Println(len(args)) } args := []string{"a","b"} f(args...)
此语法适用于使用文本语法构建的切片,或表示可变参数的切片(因为它们之间没有区别)。