美文网首页
【Go - 变长参数】

【Go - 变长参数】

作者: wn777 | 来源:发表于2024-09-06 01:01 被阅读0次

在 Go 语言中,变长参数(variadic parameters)允许函数接受可变数量的参数。变长参数在函数定义中使用 ... 语法,并且在函数内部表现为一个切片。

变长参数的定义和使用

定义变长参数

在函数定义中,变长参数必须是参数列表中的最后一个参数,并且其类型前面要加上 ...。例如:

func myFunction(a int, b ...int) {
    // b 是一个 int 类型的切片
}

调用变长参数

在调用函数时,可以传递任意数量的参数给变长参数:

myFunction(1)         // b 为空
myFunction(1, 2)      // b 包含一个元素 [2]
myFunction(1, 2, 3)   // b 包含两个元素 [2, 3]

示例

以下是一个典型的示例,展示了如何定义和使用变长参数:

package main

import "fmt"

// sum 函数接受一个变长参数 b
func sum(a int, b ...int) int {
    total := a
    for _, v := range b {
        total += v
    }
    return total
}

func main() {
    fmt.Println(sum(1))           // 输出: 1
    fmt.Println(sum(1, 2))        // 输出: 3
    fmt.Println(sum(1, 2, 3, 4))  // 输出: 10
}

相关文章

网友评论

      本文标题:【Go - 变长参数】

      本文链接:https://www.haomeiwen.com/subject/clldljtx.html