首頁 >後端開發 >Golang >go語言中數字如何轉字串

go語言中數字如何轉字串

藏色散人
藏色散人原創
2020-12-18 15:08:557493瀏覽

go語言中數字轉字串的方法:首先建立一個go範例檔案;然後使用strconv套件中的「strconv.Itoa」方法將byte或int類型的值轉換為數字的字串表現形式即可。

go語言中數字如何轉字串

本文環境:Windows7系統、Go1.11.2版,本文適用於所有品牌的電腦。

推薦教學:《go語言教學

Go中數字轉換字串的正確姿勢

在許多語言中,你可以輕鬆地將任何資料類型轉換為字串,只需將其與字串連接,或使用類型轉換表達式即可。但是,如果你在Go中嘗試執行似乎很明顯的操作(例如將int轉換為字串),你不太可能獲得預期的效果。

例如下面:

string(120)

你期望回傳的結果是什麼?如果你有使用其他程式語言的經驗,那麼大多數人的猜測是「 123」。相反,Go中上面的型別轉換會得到「 E」之類的值,那根本不是我們想要的。因為string()會直接把位元組或數字轉換為字元的UTF-8表現形式。

所以在Go中將byte或int類型的值轉換為數字的字串表現形式的正確方法是使用strconv套件中的方法,例如strconv.Itoa。

strconv.Itoa(120)// 返回"120"

下面的例子,可以試著把strconv.Itoa改成string看看得到什麼輸出。

package main
import (
  "fmt"
  "strings"
  "strconv"
)
type IPAddr [4]byte
func (p IPAddr) String() string {
    var ipParts []string
    for _, item := range p {
ipParts = append(ipParts, strconv.Itoa(int(item)))
    }
    return strings.Join(ipParts, ".")
}
func main() {
    hosts := map[string]IPAddr{
"loopback":  {127, 0, 0, 1},
"googleDNS": {8, 8, 8, 8},
    }
    for name, ip := range hosts {
fmt.Printf("%v: %v\n", name, ip)
    }
}

以上是go語言中數字如何轉字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn