Golang 匿名函数可以返回多个值吗?

2024年 4月 13日 31.6k 0

是的,go 语言中的匿名函数可以返回多个值。语法:func(arg1, arg2, ..., argn) (ret1, ret2, ..., retm) { // 函数体 }。使用方法:使用 := 操作符接收返回值;使用 return 关键字返回多个值。

Golang 匿名函数可以返回多个值吗?

Go 语言中匿名函数是否可以返回多个值?

简答:

是的,Go 语言中的匿名函数可以返回多个值。

语法:

func(arg1, arg2, ..., argN) (ret1, ret2, ..., retM) {
    // 函数体
}

其中:

  • arg1, arg2, ..., argN 为匿名函数的参数列表。
  • ret1, ret2, ..., retM 为匿名函数的返回值列表。

使用方法:

  1. 使用 := 操作符接收返回值:
values := func(x, y int) (int, int) {
    return x + y, x - y
}(10, 5)

上述代码中,匿名函数接收两个整数参数 xy,并返回它们的和和差。:= 操作符将匿名函数的返回值一个接一个地分配给 values 变量。

  1. 使用 return 关键字返回多个值:
func(x int) (int, int) {
    return x + 1, x - 1
}

实战案例:

考虑如下代码:

func main() {
    // 定义一个接收整数并返回其加法和减法结果的匿名函数
    addSub := func(x int) (int, int) {
        return x + 1, x - 1
    }

    // 调用匿名函数并分别将加法和减法结果存储在变量中
    sum, diff := addSub(10)

    fmt.Println("Add:", sum)
    fmt.Println("Sub:", diff)
}

输出:

Add: 11
Sub: 9

以上就是Golang 匿名函数可以返回多个值吗?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论