go 可变参数

go 在参数列表中使用 ... 表示可变参数,例如:code

import "fmt"

func Minimum(first int, others ...int) int {
    min := first
    for _, v := range others {
        if v < min {
            min = v
        }
    }
    return min
}

func main() {
    var slice = []int{2, 4, 6, 7, 8}
    fmt.Println(Minimum(1, 2, 3, 4))
    fmt.Println(Minimum(slice[0], slice[1:]...))
}

// output
// 1
// 2

在 go 语言里 other 是一个 slice, 可是咱们不能直接传入一个 silce 进入,不然传入的是引用。
须要用 ... 把 slice 展开。class

相关文章
相关标签/搜索