亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁 后端開發(fā) Golang go語言怎么將string轉(zhuǎn)int類型

go語言怎么將string轉(zhuǎn)int類型

Mar 15, 2021 pm 02:00 PM
go語言 類型轉(zhuǎn)換

轉(zhuǎn)換方法:1、利用strconv包中的Atoi()函數(shù),可將字符串類型的整數(shù)轉(zhuǎn)換為int類型,語法“strconv.Atoi(string)”;2、利用strconv包中的ParseInt()函數(shù),可返回字符串表示的整數(shù)值(接受正負(fù)號),語法“strconv.ParseInt(string,10,64)”。

go語言怎么將string轉(zhuǎn)int類型

本教程操作環(huán)境:windows10系統(tǒng)、GO 1.18、thinkpad t480電腦。

golang中字符串和各種int類型之間的相互轉(zhuǎn)換方式

string轉(zhuǎn)成int:

int, err := strconv.Atoi(string)

string轉(zhuǎn)成int64:

int64, err := strconv.ParseInt(string, 10, 64)

int轉(zhuǎn)成string:

string := strconv.Itoa(int)

int64轉(zhuǎn)成string:

string := strconv.FormatInt(int64,10)

Go語言 strconv(類型轉(zhuǎn)換)介紹

Go語言中strconv包實現(xiàn)了基本數(shù)據(jù)類型和其字符串表示的相互轉(zhuǎn)換。

strconv包

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

更多函數(shù)請查看官方文檔。

string與int類型轉(zhuǎn)換

這一組函數(shù)是我們平時編程中用的最多的。

Atoi()

Atoi()函數(shù)用于將字符串類型的整數(shù)轉(zhuǎn)換為int類型,函數(shù)簽名如下。

func Atoi(s string) (i int, err error)

如果傳入的字符串參數(shù)無法轉(zhuǎn)換為int類型,就會返回錯誤。

s1 := "100"
i1, err := strconv.Atoi(s1)
if err != nil {
    fmt.Println("can't convert to int")
} else {
    fmt.Printf("type:%T value:%#v\n", i1, i1) //type:int value:100
}

Itoa()

Itoa()函數(shù)用于將int類型數(shù)據(jù)轉(zhuǎn)換為對應(yīng)的字符串表示,具體的函數(shù)簽名如下。

func Itoa(i int) string

示例代碼如下:

i2 := 200s2 := strconv.Itoa(i2)fmt.Printf("type:%T value:%#v\n", s2, s2) //type:string value:"200"

Parse系列函數(shù)

Parse類函數(shù)用于轉(zhuǎn)換字符串為給定類型的值:ParseBool()、ParseFloat()、ParseInt()、ParseUint()。

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。

ParseUnit()

func ParseUint(s string, base int, bitSize int) (n uint64, err error)

ParseUint類似ParseInt但不接受正負(fù)號,用于無符號整型。

ParseFloat()

func ParseFloat(s string, bitSize int) (f float64, err error)

解析一個表示浮點數(shù)的字符串并返回其值。

如果s合乎語法規(guī)則,函數(shù)會返回最為接近s表示值的一個浮點數(shù)(使用IEEE754規(guī)范舍入)。

bitSize指定了期望的接收類型,32是float32(返回值可以不改變精確值的賦值給float32),64是float64;

返回值err是*NumErr類型的,語法有誤的,err.Error=ErrSyntax;結(jié)果超出表示范圍的,返回值f為±Inf,err.Error= ErrRange。

代碼示例

b, err := strconv.ParseBool("true")
f, err := strconv.ParseFloat("3.1415", 64)
i, err := strconv.ParseInt("-2", 10, 64)
u, err := strconv.ParseUint("2", 10, 64)

這些函數(shù)都有兩個返回值,第一個返回值是轉(zhuǎn)換后的值,第二個返回值為轉(zhuǎn)化失敗的錯誤信息。

Format系列函數(shù)

Format系列函數(shù)實現(xiàn)了將給定類型數(shù)據(jù)格式化為string類型數(shù)據(jù)的功能。

FormatBool()

func FormatBool(b bool) string

根據(jù)b的值返回”true”或”false”。

FormatInt()

func FormatInt(i int64, base int) string

返回i的base進(jìn)制的字符串表示。base 必須在2到36之間,結(jié)果中會使用小寫字母’a’到’z’表示大于10的數(shù)字。

FormatUint()

func FormatUint(i uint64, base int) string

是FormatInt的無符號整數(shù)版本。

FormatFloat()

func FormatFloat(f float64, fmt byte, prec, bitSize int) string

函數(shù)將浮點數(shù)表示為字符串并返回。

bitSize表示f的來源類型(32:float32、64:float64),會據(jù)此進(jìn)行舍入。

fmt表示格式:’f’(-ddd.dddd)、’b’(-ddddp±ddd,指數(shù)為二進(jìn)制)、’e’(-d.dddde±dd,十進(jìn)制指數(shù))、’E’(-d.ddddE±dd,十進(jìn)制指數(shù))、’g’(指數(shù)很大時用’e’格式,否則’f’格式)、’G’(指數(shù)很大時用’E’格式,否則’f’格式)。

prec控制精度(排除指數(shù)部分):對’f’、’e’、’E’,它表示小數(shù)點后的數(shù)字個數(shù);對’g’、’G’,它控制總的數(shù)字個數(shù)。如果prec 為-1,則代表使用最少數(shù)量的、但又必需的數(shù)字來表示f。

代碼示例

s1 := strconv.FormatBool(true)
s2 := strconv.FormatFloat(3.1415, 'E', -1, 64)
s3 := strconv.FormatInt(-2, 16)
s4 := strconv.FormatUint(2, 16)

其他

isPrint()

func IsPrint(r rune) bool

返回一個字符是否是可打印的,和unicode.IsPrint一樣,r必須是:字母(廣義)、數(shù)字、標(biāo)點、符號、ASCII空格。

CanBackquote()

func CanBackquote(s string) bool

返回字符串s是否可以不被修改的表示為一個單行的、沒有空格和tab之外控制字符的反引號字符串。

其他

除上文列出的函數(shù)外,strconv包中還有Append系列、Quote系列等函數(shù)。具體用法可查看官方文檔。

推薦學(xué)習(xí):Golang教程

以上是go語言怎么將string轉(zhuǎn)int類型的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

在Go語言中使用Redis Stream實現(xiàn)消息隊列時,如何解決user_id類型轉(zhuǎn)換問題? 在Go語言中使用Redis Stream實現(xiàn)消息隊列時,如何解決user_id類型轉(zhuǎn)換問題? Apr 02, 2025 pm 04:54 PM

Go語言中使用RedisStream實現(xiàn)消息隊列時類型轉(zhuǎn)換問題在使用Go語言與Redis...

GoLand中自定義結(jié)構(gòu)體標(biāo)簽不顯示怎么辦? GoLand中自定義結(jié)構(gòu)體標(biāo)簽不顯示怎么辦? Apr 02, 2025 pm 05:09 PM

GoLand中自定義結(jié)構(gòu)體標(biāo)簽不顯示怎么辦?在使用GoLand進(jìn)行Go語言開發(fā)時,很多開發(fā)者會遇到自定義結(jié)構(gòu)體標(biāo)簽在?...

Go語言中哪些庫是由大公司開發(fā)或知名的開源項目提供的? Go語言中哪些庫是由大公司開發(fā)或知名的開源項目提供的? Apr 02, 2025 pm 04:12 PM

Go語言中哪些庫是大公司開發(fā)或知名開源項目?在使用Go語言進(jìn)行編程時,開發(fā)者常常會遇到一些常見的需求,?...

使用Go語言連接Oracle數(shù)據(jù)庫時是否需要安裝Oracle客戶端? 使用Go語言連接Oracle數(shù)據(jù)庫時是否需要安裝Oracle客戶端? Apr 02, 2025 pm 03:48 PM

使用Go語言連接Oracle數(shù)據(jù)庫時是否需要安裝Oracle客戶端?在使用Go語言開發(fā)時,連接Oracle數(shù)據(jù)庫是一個常見需求?...

在Go編程中,如何正確管理Mysql和Redis的連接與釋放資源? 在Go編程中,如何正確管理Mysql和Redis的連接與釋放資源? Apr 02, 2025 pm 05:03 PM

Go編程中的資源管理:Mysql和Redis的連接與釋放在學(xué)習(xí)Go編程過程中,如何正確管理資源,特別是與數(shù)據(jù)庫和緩存?...

centos postgresql資源監(jiān)控 centos postgresql資源監(jiān)控 Apr 14, 2025 pm 05:57 PM

CentOS系統(tǒng)下PostgreSQL數(shù)據(jù)庫資源監(jiān)控方案詳解本文介紹多種監(jiān)控CentOS系統(tǒng)上PostgreSQL數(shù)據(jù)庫資源的方法,助您及時發(fā)現(xiàn)并解決潛在性能問題。一、利用PostgreSQL內(nèi)置工具和視圖PostgreSQL自帶豐富的工具和視圖,可直接用于性能和狀態(tài)監(jiān)控:pg_stat_activity:查看當(dāng)前活動連接和查詢信息。pg_stat_statements:收集SQL語句統(tǒng)計信息,分析查詢性能瓶頸。pg_stat_database:提供數(shù)據(jù)庫層面的統(tǒng)計數(shù)據(jù),例如事務(wù)數(shù)、緩存命中

在使用Go語言和viper庫時,為什么傳遞指針的指針是必要的? 在使用Go語言和viper庫時,為什么傳遞指針的指針是必要的? Apr 02, 2025 pm 04:00 PM

Go指針語法及viper庫使用中的尋址問題在使用Go語言進(jìn)行編程時,理解指針的語法和使用方法至關(guān)重要,尤其是在...

去其他語言:比較分析 去其他語言:比較分析 Apr 28, 2025 am 12:17 AM

goisastrongchoiceforprojectsneedingsimplicity,績效和引發(fā)性,butitmaylackinadvancedfeatures and ecosystemmaturity.1)

See all articles