learn go passing variable-length arguments

package main

// 参考文档:
//     https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/06.3.md

import "fmt"

func main() {
    x := min(1, 3, 2, 0)
    fmt.Printf("The mininum is: %d
", x)

    // 参数被存储在一个数组 arr 中,则可以通过 arr... 的形式来传递参数调用变参函数。
    arr := []int{7, 9, 3, 5, 1}
    x = min(arr...)
    fmt.Printf("The mininum in the arr is: %d
", x)
}

func min(a ...int) int {
    if len(a) == 0 {
        return 0
    }

    min := a[0]
    for _, v := range a {
        if v < min {
            min = v
        }
    }
    return min
}
原文地址:https://www.cnblogs.com/zengjfgit/p/4986254.html