时间:2022-09-22 10:40:26 | 栏目:Golang | 点击:次
在 Go 语言 中,跳转控制语句除了有 goto 、break 和 continue 之外,还可以使用 return 。如果 return 语句使用在普通的 函数 中,则表示跳出该函数,不再执行函数中 return 后面的代码,可以理解成终止函数。如果 return 语句使用在 main 函数中,表示终止 main 函数,也就是终止程序的运行。
go函数支持返回多个值,这一点是其他编程语言没有的
func 函数名(形参列表)(返回值类型列表){ ? 语句 ? return返回值列表 }
案例演示:
package main import ( "fmt" ) func test(n1 int){ n1 = n1 + 1 fmt.Println("test() n1=",n1) } func getSum(n1 int,n2 int) int { sum := n1 + n2 fmt.Println("getSum sum=",sum) return sum } func getSumAndSub(n1 int,n2 int)(int,int){ sum := n1 + n2 sub := n1 - n2 return sum,sub } func main(){ n1 := 10 test(n1) fmt.Println("main() n1=",n1) sum := getSum(10,20) fmt.Println("main sum = ",sum) res1,res2 := getSumAndSub(8,2) fmt.Printf("res1=%v res2=%v\n",res1,res2) _,res3 := getSumAndSub(3,9) fmt.Println("res3=",res3) }
执行结果:
test() n1= 11
main() n1= 10
getSum sum= 30
main sum = 30
res1=10 res2=6
res3= -6
一个函数在函数体内有调用了本身,称之为递归调用
package main import ( "fmt" ) func test(n int){ if n > 2 { n-- test(n) } fmt.Println("n=",n) } func main() { test(4) }
执行结果:
n= 2
n= 2
n= 3