strconv包實現(xiàn)額基本數(shù)據(jù)類型與其字符串表示的轉(zhuǎn)換,主要有以下常用函數(shù),Atoi()、Itia()、parse系列、format系列、append系列。

這一組函數(shù)是我們平時用的最多的。
Atio()函數(shù)用于將字符串類型的整數(shù)轉(zhuǎn)換為int類型,函數(shù)簽名如下:
func Atoi(s string) (i int, err error)如果傳入的字符串參數(shù)無法轉(zhuǎn)換為int類型,就會報錯。
package main
import (
"strconv"
"fmt"
)
func main(){
s1 := "100"
i1, err := strconv.Atoi(s1)
if err != nil{
fmt.Println("can't convert to int")
}else{
fmt.Printf("type:%T value:%#v\t",i1, i1)
}
}
Itoa()函數(shù)用于將int類型的數(shù)據(jù)轉(zhuǎn)換為對應(yīng)的字符串表示,具體函數(shù)簽名如下:
func Itoa(i int) string示例代碼如下:
package main
import (
"strconv"
"fmt"
)
func main(){
// s1 := "100"
// i1, err := strconv.Atoi(s1)
// if err != nil{
// fmt.Println("can't convert to int")
// }else{
// fmt.Printf("type:%T value:%#v\t",i1, i1)
// }
i2 := 100
s2 := strconv.Itoa(i2)
if err != nil{
fmt.Printf("type:%T value:%#v\n",s2,s2)
}
}parse系列函數(shù)
Parse類函數(shù)用于轉(zhuǎn)換字符串為給定類型的值:ParseBool()、ParseFloat()、ParseInt()、ParseUnit()。
ParseFloat()
func ParseFloat(s string, bitSize int) (f float64,err error)解析一個表示浮點數(shù)的字符串并返回其值。
ParseBool()
func ParseBool(str string) (value bool,err error)返回字符串表示的bool值。它接受1、0、t、f、T、F、true、false、True、False、TRUE、FALSE;否則返回錯誤。
ParseInt()
func ParseInt(s string, base int, bitsize int) (i int64, err error)返回字符串表示的整數(shù)值,接受正負(fù)號。
base 指定進(jìn)制(2到36),如果base為0,則從字符串前置判斷,“0x”是16進(jìn)制,“0”是8進(jìn)制,否則是10進(jìn)制。
bitSize指定結(jié)果必須能無溢出的整數(shù)類型,0、8、16、32、64分別代表int、int8、int16、int32、int64;
返回的err是*NumErr類型,如果語法錯誤,err.Error = ErrSyntax ;如果結(jié)果超出類型范圍err.Error = ErrRange。
package main
import (
"strconv"
"fmt"
)
func main(){
b , err := strconv.ParseBool("true")
if err != nil{
panic(err)
}
fmt.Println(b)
f ,err := strconv.ParseFloat("3.1415",64)
if err != nil{
panic(err)
}
fmt.Println(f)
u ,err := strconv.ParseUnit("2",10,64)
if err != nil{
panic(err)
}
fmt.Println(u)
}
format系列函數(shù)實現(xiàn)了將給定類型的數(shù)據(jù)格式化為string類型的數(shù)據(jù)的功能。
func FormatBool(b bool) string根據(jù)b的值返回true或false。
func FormatInt(i int64,base int) string返回i的base進(jìn)制的字符串表示。base必須在2到36之間,結(jié)果中會使用小寫字母“a”到“z”表示大于10的數(shù)字。
func FormatUnit(i int64, base int)是FormatInt的無符號整數(shù)版本。
func FormatFloat(f float64, fmt byte, prec,bitsize int) string函數(shù)將浮點數(shù)表示為字符串并返回。
s1 := strconv.FormatBool(true)
s2 := strconv.FormatFloat(3.1415,'E',-1,64)
s3 := strconv.FormatInt(-2,16)
// s4 := strconv.FormatUnit(2,16)
fmt.Println(s1,s2,s3)另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)站欄目:go語言碎片整理之strconv-創(chuàng)新互聯(lián)
轉(zhuǎn)載注明:http://chinadenli.net/article44/diisee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、做網(wǎng)站、動態(tài)網(wǎng)站、小程序開發(fā)、定制開發(fā)、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容