返回块中值的 Go 语言程序


在本文档中,我们将学习如何使用外部函数和匿名函数从块中返回值。

使用大括号创建一个块,其中变量的作用域仅限于块内而非块外。

示例 1

在此示例中,在代码块中将 x 和 y 的两个值相加,并将相加的值赋给 z。然后,调用函数 getResult,在该函数中将另外一个 x 和 y 相加,并将其赋给代码块中的 z。

package main

import "fmt"

func main() {
   x := 10
   y := 20

   // Code block
   {
      z := x + y
      fmt.Println("Value of z:", z)
   }
   result := getResult()
   fmt.Println("Result:", result)
}

func getResult() int {
   x := 40
   y := 10

   {
      z := x + y
      return z
   }
}

输出

Value of z: 30
Result: 50

示例 2

在这个例子中,将 10 赋给 x,将 20 赋给 y,然后在匿名函数中相加并返回,相加的值将赋给 z。

package main

import "fmt"

func main() {
   x := 10
   y := 20

   // Code block
   z := func() int {
      return x + y
   }()

   fmt.Println("Value of z:", z)
}

输出

Value of z: 30

结论

我们执行并编译了使用两个示例从块中返回值的程序。在第一个示例中,我们创建了两个代码块,在第二个代码块中我们返回了值,在第二个示例中我们创建了一个返回相加值的匿名函数。

更新于:2023 年 5 月 3 日

142 次浏览

开启你的 职业 生涯

完成该课程即可取得认证

开始
广告