duannaiying9662 2019-08-21 13:46
浏览 92
已采纳

将字符串的错误值丢掉进行int转换

I have a Go program that I simply want to convert a string to an int. I understand the function:

val, err := strconv.Atoi(myValueAsAString)

works and I can check the error by the following:

if err != nil {
    //handle error
}

But what if I am 100% the string will be a number, and I want to convert it to an int in an if statement, like the following:

if 45 + strconv.Atoi(value) >= 90 {
    //do something
}

But strconv.Atoi also returns an error value as well, so how can I throw that away and essentially do what I did above, without having to define the variable above the if statement and use it in the if statement. I'm not sure if this is possible or not, but I would love to know.

  • 写回答

2条回答 默认 最新

  • duanquan1876 2019-08-21 13:48
    关注
    1. Create a wrapper function that discards the error result:
    func atoi(s string) int {
        value, _ := strconv.Atoi(s)
        return value
    }
    
    if 45 + atoi(value) >= 90 {
        //do something
    }
    
    1. Or, do the conversion as a statement before the if and ignore the error result:
    if i, _ := strconv.Atoi(value); 45 + i >= 90 {
        // do something
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 怎样才能让鼠标沿着线条的中心线轨迹移动
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?