分享
Go语言示例-函数返回多个值
baiyuxiong · · 12267 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
Go语言中函数可以返回多个值,这和其它编程语言有很大的不同。对于有其它语言编程经验的人来说,最大的障碍不是学习这个特性,而是很难想到去使用这个特性。
简单如交换两个数值的例子:
package main import "fmt" func swap(a int, b int) (int, int) { return b, a } func main() { a := 1 b := 2 a, b = swap(a, b) fmt.Println(a) fmt.Println(b) }
输出结果为:
2
1
如果在其它语言中,我们第一想到的肯定是建立一个中间变量做交换。但在Go使用返回多个值的功能很容易的就实现了。
另外,在Go中,声明的变量没有使用的话,编译无法通过。所以如果多返回值函数返回的值中,有的不需要,可以用下划线来接收值,表示丢弃这个值,如上面的例子中,只需要返回的第一值,可以这样:
a, _ = swap(a, b)
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信12267 次点击
上一篇:Go语言工程结构
下一篇:Go语言参数中的三个点是干什么的
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
Go语言中函数可以返回多个值,这和其它编程语言有很大的不同。对于有其它语言编程经验的人来说,最大的障碍不是学习这个特性,而是很难想到去使用这个特性。
简单如交换两个数值的例子:
package main import "fmt" func swap(a int, b int) (int, int) { return b, a } func main() { a := 1 b := 2 a, b = swap(a, b) fmt.Println(a) fmt.Println(b) }
输出结果为:
2
1
如果在其它语言中,我们第一想到的肯定是建立一个中间变量做交换。但在Go使用返回多个值的功能很容易的就实现了。
另外,在Go中,声明的变量没有使用的话,编译无法通过。所以如果多返回值函数返回的值中,有的不需要,可以用下划线来接收值,表示丢弃这个值,如上面的例子中,只需要返回的第一值,可以这样:
a, _ = swap(a, b)