亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

丟棄字符串到 int 轉換時的錯誤值

丟棄字符串到 int 轉換時的錯誤值

Go
米琪卡哇伊 2023-07-17 13:56:54
我有一個 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 語句中使用它。我不確定這是否可能,但我很想知道。
查看完整描述

2 回答

?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

創建一個丟棄錯誤結果的包裝函數:

func atoi(s string) int {

    value, _ := strconv.Atoi(s)

    return value

}

if 45 + atoi(value) >= 90 {

    //do something

}

或者,在 之前作為語句進行轉換if并忽略錯誤結果:

if i, _ := strconv.Atoi(value); 45 + i >= 90 {

    // do something

}


查看完整回答
反對 回復 2023-07-17
?
胡說叔叔

TA貢獻1804條經驗 獲得超8個贊

我只是想將字符串轉換為整數。


如果我 100% 字符串將是一個數字怎么辦?


我想在 if 語句中將一串數字轉換為 int,如下所示:


if 45 + strconv.Atoi(value) >= 90 {

    //do something

}

如果你錯了怎么辦?


為 編寫一個簡單的 Go 包裝函數strconv.Atoi。在 Go 中,不要忽視錯誤。


// ASCII digits to integer.

func dtoi(s string) int {

    i, err := strconv.Atoi(s)

    if err != nil {

        panic(err)

    }

    return i

}

例如,


package main


import (

    "fmt"

    "strconv"

)


// ASCII digits to integer.

func dtoi(s string) int {

    i, err := strconv.Atoi(s)

    if err != nil {

        panic(err)

    }

    return i

}


func main() {

    value := "1024"

    if 45+dtoi(value) >= 90 {

        fmt.Println("do something")

    }

}

游樂場:https://play.golang.org/p/I3plKW2TGSZ


輸出:


do something


查看完整回答
反對 回復 2023-07-17
  • 2 回答
  • 0 關注
  • 125 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號