Go语言函数返回值
返回值定义
返回值通过使用返回语句返回。可以返回任意类型。返回语句会立即中止函数的运行,并且将控制权交回调用该函数的代码行。
Go语言函数可以有零个或多个返回值,可以返回多个不同类型的结果。当函数有返回值 return 语句必须要写,否则编译器会报错。
Go语言在定义函数时返回值可以被命名,命名返回值的作用域是整个函数体就像定义在函数体内的局部变量。在 return 语句中,无需显示的返回这些值,Go 会自动将其返回。
返回值应用
1、零返回值
package main import ( "fmt" ) func oldboy() { fmt.Println("老男孩IT教育,只培养技术精英。") } func main() { oldboy() }
2、多返回值
package main import ( "fmt" ) func course(name string) (string, string, string, string, string) { return "Linux", "Python", "Golang", "Java", "DBA" } func main() { fmt.Println(course("oldboy")) }
3、显式返回值,return 语句后必须带返回的结果。
package main import ( "fmt" ) func sum(x, y int) int { return x + y } func main() { fmt.Println(sum(1, 2)) }
4、隐式返回值,只有 return 语句自动返回命名返回值。
package main import ( "fmt" ) func sum(x, y int) (z int) { z = x + y return } func main() { fmt.Println(sum(1, 2)) }
巧用return
第一种,无返回值函数,在内部任何程序执行片段使用return ,直接会跳出该函数,return下面的程序片段都不会再执行。
package main import ( "fmt" ) func test() { for i := 10; i < 100; i++ { fmt.Printf("%vn", i) if i == 11 { return } } } func main() { test() }
第二种,有返回值函数,在内部任何程序执行片段使用return,它下面的程序片段都不会再执行,但是程序结尾必须以return结束,否则程序报错。
package main import ( "fmt" ) func test() int { i := 0 for i = 10; i < 100; i++ { fmt.Printf("%vn", i) if i == 11 { return i } } return i } func main() { _ = test() }
特别声明:以上文章内容仅代表作者本人观点,不代表变化吧观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与变化吧联系。
- 赞助本站
- 微信扫一扫
-
- 加入Q群
- QQ扫一扫
-
评论