[go]函数

参数

//不定参数

import "fmt"

func test(name string, args ...interface{}) {
    println(name)
    fmt.Println(args)
}

func main() {
    test("mm") // args可以不传, args得到[]
    test("mm", 1, 2, 3, 4, "mm")
}

//TODO:不知道这样传值为什么不行
[go]函数_第1张图片

// 不定参数传参小结

func test(name string, args ...interface{}) {
    println(name)
    fmt.Println(args)
}

func test2(args ...interface{}) {
    //方式1
    //test("m1", 1, 2, 3)

    //方式2: 错误, 显示类型不匹配
    //arr := []int{1, 2, 3}
    //test("m1", arr...)

    //方式3
    test("m1", args...)
}

func main() {
    test2() //参数可传可不传
    test2(1, 2, 3) 
}

你可能感兴趣的:([go]函数)