我正在尝试在 Go 中做一些相对简单的事情——将字符串转换为整数,然后将其加倍:
myInt, _ := strconv.Atoi(args[1])
doubleArg := myInt * 2
由于 Atoi() 返回两个参数(整数和 err),我使用 myInt, _ := 来检索值的整数。我想将它加倍(因此是第二行)但不能在一行中完成所有操作:
myInt, _ := strconv.Atoi(args[1]) * 2
给我:
multiple-value strconv.Atoi() in single-value context
但是,根据我使用大多数其他语言的经验,必须在两行中执行此操作似乎有很多样板。这只是我必须处理的一个限制,还是有更好的方法来编写我的代码?
最佳答案
两行代码并没有那么多。但是如果你必须在你的代码中多次做同样的事情,你不妨编写你自己的转换然后乘法函数的版本。这个函数可以做错误检查,真正的工作。
关于戈朗 : Is there a way to modify one of the multi-value return parameters in one line?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47101574/