go 不定参数函数

不定参数函数

在Go语言中,能够传递可变数量的参数,但它们的类型必须与函数签名指定的类型相同。要指定不定参数,可使用3个点(…)

demo

package main

import "fmt"

// 数字求和函数 不定参数
func AddNumbers(numbers ...int) (sum int) {
	for _,v :=range numbers{
		sum+=v
	}

	// 具名函数可以不用显式的返回返回值变量
	return

}

func main()  {
	fmt.Println(AddNumbers(1,2,3,4,5,6))
}

  

 确定的参数和不定的参数混合

package main

import "fmt"

// 数字求和函数 不定参数
func AddNumbers(numbers ...int) (sum int) {
	for _,v :=range numbers{
		sum+=v
	}

	// 具名函数可以不用显式的返回返回值变量
	return

}

// 班级和人数  前面式确定的参数 后面式不确定参数
//模拟一下,一个班级的学生人数不断的增加 最后返回班级的人数
func ClassAndStudent(class string,numbers ... int) (classname string,number int) {

	for _,num :=range numbers{
		number+=num
	}
	classname = class
	return
}

func main()  {
	fmt.Println(AddNumbers(1,2,3,4,5,6))

	fmt.Println(ClassAndStudent("三年级",1,2,3,4,5,6,7,8))
}

  

原文地址:https://www.cnblogs.com/zexin88/p/14956960.html