golang中[] string和…string之间有什么区别?

在Go语言中,

[]string 是一个字符串数组

并且我们也将其...string用作参数。

有什么区别?

功能定义:

func f(args ...string) {}

我可以像下面这样调用此函数吗?

args := []string{"a", "b"}

f(args)

回答:

[]string 是一个字符串数组

从技术上讲,这是引用基础数组的切片

并且我们也将其...string用作参数。

有什么区别?

关于结构,真的没有。两种语法得出的数据类型相同。

...参数语法形成了可变参数的参数。它将接受零个或多个string参数,并将它们作为切片引用。

关于调用f,您可以使用以下语法将字符串的一部分传递给variadic参数:

func f(args ...string) {

fmt.Println(len(args))

}

args := []string{"a", "b"}

f(args...)

此语法可用于使用文字语法构建的切片,或表示可变参数的切片 (因为它们之间实际上没有区别)

http://play.golang.org/p/QWmzgIWpF8

以上是 golang中[] string和…string之间有什么区别? 的全部内容, 来源链接: utcz.com/qa/406807.html

回到顶部