为了账号安全,请及时绑定邮箱和手机立即绑定

我可以对返回 2 个参数的方法使用单个变量吗

我可以对返回 2 个参数的方法使用单个变量吗

Go
慕码人2483693 2021-12-20 11:00:49
我有一个简单的问题 -当方法返回 2 个值(val 和 error)时,我可以使用单值赋值吗?resp := http.Get("http://www.google.com/")
查看完整描述

2 回答

?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

赋值左侧的操作数数量必须与函数返回的值数量匹配。

您可以使用空白标识符来忽略返回值:

resp, _ := http.Get("http://www.google.com/")

忽略这样的错误是不好的做法。


查看完整回答
反对 回复 2021-12-20
?
慕码人8056858

TA贡献1803条经验 获得超6个赞

从 Go 语言规范:


元组赋值将多值操作的各个元素分配给变量列表。有两种形式。在第一种情况下,右侧操作数是单个多值表达式,例如函数调用、通道或映射操作或类型断言。左侧操作数的数量必须与值的数量相匹配。


For instance, if f is a function returning two values, 

x, y = f() assigns the first value to x and the second to y.

空白标识符提供了一种忽略赋值中右侧值的方法:


_ = x       // evaluate x but ignore it

x, _ = f()  // evaluate f() but ignore second result value


查看完整回答
反对 回复 2021-12-20
  • 2 回答
  • 0 关注
  • 171 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信