成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

捋一捋Go語言的一個類型轉換工具包strconv包

開發 后端
這次咱們來學一下Go語言的一個類型轉換工具包strconv。希望能夠幫助到你!

[[386556]]

前言

Hey,大家好,我是碼農,星期八,這次咱們來學一下Go語言的一個類型轉換工具包strconv。

不知道你有沒有想過。

在Go中,字符串100如何轉成數字100。

這樣?

  1. func main() { 
  2.     var score = "100" 
  3.     i := int(score) 
  4.     fmt.Printf(i) 

No,No,No,看一下執行結果。

 

報錯啦,說明并不是這么簡單粗暴轉換的!!!

string轉int(用Atoi)

代碼

  1. func main() { 
  2.     //string 100 
  3.     var scoreStr = "100" 
  4.     fmt.Printf("%v,%T\n", scoreStr, scoreStr) //100,string 
  5.     score, err := strconv.Atoi(scoreStr) 
  6.     //轉換失敗 
  7.     if err != nil { 
  8.         panic(err) 
  9.     fmt.Printf("%v,%T\n", score, score) 

執行結果


可以發現,轉換成功之后,就成了int類型。

int轉string(用Itoa)

代碼

  1. func main() { 
  2.     //int 100 
  3.     var scoreInt = 100 
  4.     fmt.Printf("%v,%T\n", scoreInt, scoreInt) //100,string 
  5.     score  := strconv.Itoa(scoreInt) 
  6.     fmt.Printf("%v,%T\n", score, score) 

執行結果


注:在Go中,只能通過上述兩種方式進行string -> int,int -> string。

strconv.Parse轉換

strconv的Parse相關方法,也是講string類型轉換為其他類型,但是相比之下。

strconv的Parse的多樣性會多一點。

strconv.ParseBool()

這個方法,是將字符串的Bool類型,轉成真正的Bool類型。

示例代碼

  1. func main() { 
  2.     var tString = "true"//可以是 1,0,t,f,T,F,truefalseTrueFalseTRUEFALSE 
  3.     fmt.Printf("%T,%v\n", tString, tString) 
  4.     tBool, err := strconv.ParseBool(tString) 
  5.     if err != nil { 
  6.         panic(err) 
  7.     fmt.Printf("%T,%v\n", tBool, tBool) 

執行結果

 

成功將字符串true轉成Bool true

strconv.ParseInt()

這個,就很簡單了,跟strconv.Atoi()基本一樣。

示例代碼

  1. func main() { 
  2.    var tString = "666" 
  3.    fmt.Printf("%T,%v\n", tString, tString) 
  4.    tInt, err := strconv.ParseInt(tString,10,64) 
  5.    if err != nil { 
  6.       panic(err) 
  7.    } 
  8.    fmt.Printf("%T,%v\n", tInt, tInt) 

執行結果


第二個參數10和第三個參數64的意思。

可能你同我一樣,剛開始不明白第二個參數10和第三個參數64的意思。

但是下面一張圖,可能你就懂了。

 

理解就好,一般情況下,寫成上述代碼就行,本來就是轉int的,想那么多干嘛!!!

strconv.parseUint()

同上,但是這個只能轉正數,不能轉負數。

strconv.ParseFloat()

這個,看名字就知道是將字符串浮點數轉真正的浮點數咯。

示例代碼

  1. func main() { 
  2.     var tString = "3.1415" 
  3.     fmt.Printf("%T,%v\n", tString, tString) 
  4.     tFloat, err := strconv.ParseFloat(tString,64) 
  5.     if err != nil { 
  6.         panic(err) 
  7.     fmt.Printf("%T,%v\n", tFloat, tFloat) 

第二個參數64,同上,也是因為返回的就是float64,所以容量也得是64。

執行結果


strconv.Format轉換

這個和strconv.Parse是相反的,是將int/float/bool等 -> string的一個過程。

但是我總感覺有點脫褲子放屁的感覺,既然官方提供了,就隨便看看叭!!!

這里我就使用簡述的代碼來寫的。

  1. func main() { 
  2.     a := strconv.FormatBool(true
  3.     //E表示十進制, 
  4.     b := strconv.FormatFloat(3.1415, 'E', -1, 64) 
  5.     c := strconv.FormatInt(666, 10) 
  6.     fmt.Printf("%v,%T\n",a,a) 
  7.     fmt.Printf("%v,%T\n",b,b) 
  8.     fmt.Printf("%v,%T\n",c,c) 

執行結果


總結

其實這次我們的重點主要是前倆,string - > int(用Atoi),int -> string(用Itoa)。

其他的主要分為strconv.Parse系列和strconv.Format系列。

相對來說Parse系列可能會用的更多一點,Format相關使用的不是太多,了解就好!

總之,不管怎么樣,都要敲一下代碼。

想學習更多關于Python的知識,可以參考學習網址:http://pdcfighting.com/,點擊閱讀原文,可以直達噢~

 

責任編輯:姜華 來源: Go語言進階學習
相關推薦

2021-07-07 22:27:54

磁盤分區硬盤

2024-05-06 12:23:00

GenAI人工智能

2021-11-04 18:15:55

下載上傳瀏覽器

2021-05-17 10:50:15

系統調用內核

2020-12-18 06:09:07

Java淺拷貝深拷貝

2020-05-18 14:12:41

PostgreSQLDB架構數據庫

2023-03-15 10:38:55

2023-11-28 12:42:56

數據分析管理

2021-03-05 10:03:21

網絡釣魚LogoKit網絡犯罪

2021-01-04 07:49:39

Feilong-corJAVA開發工具

2018-09-03 13:39:43

手機蘋果iPhone

2020-03-12 13:55:05

工具代碼開發

2023-06-14 08:02:54

函數代碼概率

2020-12-15 07:54:40

工具Hutoolgithub

2020-12-15 15:08:17

工具Java線程

2021-03-11 07:14:01

Epoll原理線程

2015-02-26 14:17:30

2022-03-22 09:22:21

Go kitgRPC網絡傳輸

2022-02-27 23:10:26

微服務工具包Golang

2024-04-26 00:01:00

Go語言類型
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 激情综合五月天 | av高清毛片 | 精品一区二区三区不卡 | 亚洲啪啪 | 久久人人爽人人爽 | 九九热免费观看 | 中文字幕国产日韩 | 日韩精品免费在线 | 91极品尤物在线播放国产 | 欧美大片黄 | 人人看人人干 | 一区二区三区四区av | 毛片软件 | 亚洲人久久 | 久久久久国产一级毛片 | 国产精品极品美女在线观看免费 | 91精品国产色综合久久 | 久久精品国产久精国产 | 黄色成人在线 | 国产最好的av国产大片 | 精品视频在线播放 | 草久在线视频 | 久草影视在线 | 国产精品99久久久久久动医院 | 日韩欧美一级片 | 欧美国产中文字幕 | 天堂亚洲| 久久久一 | 91最新入口 | 国产美女特级嫩嫩嫩bbb片 | 国产熟熟 | 国产精品久久亚洲7777 | 狠狠干av | 一级毛片在线播放 | 国产成人av电影 | 天天看天天爽 | 一级片在线观看视频 | 亚洲九九精品 | 欧美日韩免费视频 | 欧美最猛性xxxxx亚洲精品 | 国产精品亚洲一区二区三区在线 |