欢迎来到代码驿站!

Golang

当前位置:首页 > 脚本语言 > Golang

go语言中的return语句

时间:2022-09-22 10:40:26|栏目:Golang|点击:

1、基本语法和说明

在 Go 语言 中,跳转控制语句除了有 goto 、break 和 continue 之外,还可以使用 return 。如果 return 语句使用在普通的 函数 中,则表示跳出该函数,不再执行函数中 return 后面的代码,可以理解成终止函数。如果 return 语句使用在 main 函数中,表示终止 main 函数,也就是终止程序的运行。

go函数支持返回多个值,这一点是其他编程语言没有的

func  函数名(形参列表)(返回值类型列表){
?	语句
?	return返回值列表
}
  • 1、如果返回多个值是,在接受时,希望忽略某个返回值,则使用_符号占位忽略。
  • 2、如果返回值只有一个(返回值类型列表)可以不写()

案例演示:

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

2、函数的递归调用

2.1基本介绍

一个函数在函数体内有调用了本身,称之为递归调用

2.2递归调用入门

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

3、总结

  • 1、执行一个函数时,就创建一个新的受保护的独立空间(新函数栈)
  • 2、函数的局部变量时独立的,不会相互影响。
  • 3、递归必须向退出递归的条件逼近,否则就是无限递归,死循环
  • 4、当一个函数执行完毕,或者遇到return,就会返回,遵守谁调用就将结果返回给谁,同时当函数执行完毕或返回时,改函数本身也会被系统销毁

上一篇:Go 语言入门之net/url 包

栏    目:Golang

下一篇:Golang的strings.Split()踩坑记录

本文标题:go语言中的return语句

本文地址:http://www.codeinn.net/misctech/214354.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有