Go 不定参函数

demo.go(不定参函数):

package main

import "fmt"

// 主函数
func main() {
	// 调用函数
	add(1, 2, 3)
}

// 定义函数  ...表示不定参
func add(args ...int) {
	// args是数据的集合(切片,类似数组)(数组的长度是固定的)
	fmt.Println(args)         // [1 2 3]
	fmt.Printf("%T \n", args) // []int  切片(可以动态添加数据,长度不固定)
	fmt.Println(len(args))    // 3
	fmt.Println(args[0])      // 1
}

demo.go(不定参函数的嵌套调用):

package main

import "fmt"

// 主函数
func main() {
	// 调用函数
	add(1, 2, 3)
}

// 不定参函数
func add(args ...int) {
	count := len(args)
	// 不定参函数的嵌套调用
	add2(args[0:count]...)
	// add2(args[0], args[1], args[2])
}

// 不定参函数2
func add2(args ...int) {
	fmt.Println(args) // [1 2 3]
}

猜你喜欢

转载自blog.csdn.net/houyanhua1/article/details/88627266