golang_函數:可變參數函數(傳入的參數數量不限)

Variable Functions

  • 可變參數函數,傳入參數的數量沒有限制

比如fmt.Print就是一個variable function

package main

import "fmt"

func sum(nums ...int) {
	fmt.Print(nums, " ")
	total := 0
	for _, num := range nums {
		total += num
	}
	fmt.Println("total =",total)
}
func main() {
	//Variadic functions can be called in the usual way with individual arguments.
	sum(1, 2)
	sum(1, 2, 3)
	
	//也可以這麼寫
	//If you already have multiple args in a slice, apply them to a variadic function using func(slice...) like this.
	nums := []int{1, 2, 3, 4}
	sum(nums...)
}

Output:

[1 2] total = 3
[1 2 3] total = 6
[1 2 3 4] total = 10
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章