清華尹成帶你實戰GO案例(43)Go 可變長引數列表

尹成發表於2018-05-22
Go 可變長引數列表
支援可變長引數列表的函式可以支援任意個傳入引數,比如fmt.Println函式就是一個支援可變長引數列表
的函式。

package main
import "fmt"
// 這個函式可以傳入任意數量的整型引數
func sum(nums ...int) {
fmt.Print(nums, " ")
total := 0
for _, num := range nums {
total += num
}
fmt.Println(total)
}
func main() {
// 支援可變長引數的函式呼叫方法和普通函式一樣
// 也支援只有一個引數的情況
sum(1, 2)
sum(1, 2, 3)
// 如果你需要傳入的引數在一個切片中,像下面一樣
// "func(slice...)"把切片打散傳入
nums := []int{1, 2, 3, 4}
sum(nums...)
}


輸出結果為
[1 2] 3
[1 2 3] 6
[1 2 3 4] 10

需要注意的是,可變長引數應該是函式定義的最右邊的引數,即最後一個引數。




網址:http://www.qukuailianxueyuan.io/



欲領取造幣技術與全套虛擬機器資料

區塊鏈技術交流QQ群:756146052  備註:CSDN

尹成學院微信:備註:CSDN



網址:http://www.qukuailianxueyuan.io/



欲領取造幣技術與全套虛擬機器資料

區塊鏈技術交流QQ群:756146052  備註:CSDN

尹成學院微信:備註:CSDN

相關文章