014_go语言中的变参函数

代码演示

package main

import "fmt"

func sum(nums ...int) {
	fmt.Print(nums, " ")
	totol := 0
	for _, num := range nums {
		totol += num
	}
	fmt.Println(totol)
}

func main() {
	sum(1, 2)
	sum(1, 2, 3)
	nums := []int{1, 2, 3, 4}
	sum(nums...)
}

代码运行结果

[1 2] 3
[1 2 3] 6
[1 2 3 4] 10

代码解读:

  • 可变参数,就是在调用时候可以传入任意数量的参数
  • 写法为func name(args ...type),这个函数接受任意数目的type类型的值作为参数
  • 如果有一个含有多个值的切片slice,想把它们作为参数使用,就必须要这样调用 func(slice...)
posted @ 2018-03-29 17:38  Joestar  阅读(114)  评论(0编辑  收藏  举报