用法1)主要是用于函数有多个不定参数的情况,可以接受多个不确定数量的参数(可选参数)

package main import "fmt" func test(args ...string) { // 可以接受任意个string参数
    for _, v := range args { fmt.Println(v) } } func main() { var str = []string{ "c1", "c2", "c3", "c4", } test(str...) // 切片被打散传入
}

用法2)slice可以被打散进行传递(切片传递)

package main import "fmt"

var str1 = []string{ "q1", "q2", "q3", } var str2 = []string{ "q", "c1", "c2", "c3", } func main() { str1 = append(str1, str2...) // str1的元素被打散一个个append进str2
 fmt.Println(str1) }