Go语言函数返回值
Posted Go程序员开发
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go语言函数返回值相关的知识,希望对你有一定的参考价值。
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("%v\n", 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("%v\n", i)
if i == 11 {
return i
}
}
return i
}
func main() {
_ = test()
}
下一篇:
Go语言匿名函数------敬请期待!
0基学习Go语言系列:
看完本文有收获?那就分享给更多人吧
以上是关于Go语言函数返回值的主要内容,如果未能解决你的问题,请参考以下文章