【发布时间】:2019-08-21 13:46:55
【问题描述】:
我有一个 Go 程序,我只想将字符串转换为 int。我理解这个功能:
val, err := strconv.Atoi(myValueAsAString)
有效,我可以通过以下方式检查错误:
if err != nil {
//handle error
}
但是如果我是 100% 字符串将是一个数字,我想在 if 语句中将其转换为 int,如下所示:
if 45 + strconv.Atoi(value) >= 90 {
//do something
}
但是 strconv.Atoi 也返回一个错误值,所以我怎样才能把它扔掉并基本上做我上面所做的,而不必在 if 语句上方定义变量并在 if 语句中使用它。我不确定这是否可能,但我很想知道。
【问题讨论】:
-
@icza 这个问题只是问如何将字符串转换为 int。我已经知道该怎么做,我想要的是在 if 语句中执行它并丢弃错误。
-
根据一般原则,即您确定不会发生的错误,实际上会发生,我会使用
mustXXX包装函数,如果不能发生的错误确实发生了,则该函数会恐慌。跨度>
标签: go type-conversion