關(guān)于golang 字符串 int uint int64 uint64 互轉(zhuǎn)問題
golang 字符串 int uint int64 uint64 互轉(zhuǎn)
字符串 轉(zhuǎn) int
intNum, _ = strconv.Atoi(intStr)
字符串 轉(zhuǎn) int64
intNum, _ := strconv.Atoi(intStr) int64Num = int64(intNum)
字符串 轉(zhuǎn) uint64
intNum, _ := strconv.Atoi(intStr) int64Num = uint64(intNum)
int 轉(zhuǎn) 字符串
intStr = strconv.Itoa(intNum)
int64 轉(zhuǎn) 字符串
int64Str = strconv.FormatInt(intNum, 10)
uint64 轉(zhuǎn) 字符串
int64Str = strconv.FormatUint(intNum, 10)
PS:golang 基礎(chǔ) —— 字符串 與 int 、int64 互轉(zhuǎn)
1、代碼
package main import ( "fmt" "reflect" "strconv" ) func main() { var testStr string = "123456" // 字符串 轉(zhuǎn) int intNum, _ := strconv.Atoi(testStr) fmt.Println("intNum =", intNum, ", intNum 類型是", reflect.TypeOf(intNum)) // 字符串 轉(zhuǎn) int64 int64Num, _ := strconv.ParseInt(testStr, 10, 64) fmt.Println("int64Num=", int64Num, ", int64Num 類型是", reflect.TypeOf(int64Num)) // =================================================== // int 轉(zhuǎn) 字符串 var intNum2 int = 123456 var str1 string = strconv.Itoa(intNum2) fmt.Println("str1 =", str1, ", str1 類型是", reflect.TypeOf(str1)) // int64 轉(zhuǎn) 字符串 var int64Num2 int64 = 123456 var str2 string = strconv.FormatInt(int64Num2, 10) fmt.Println("str2 =", str2, ", str2 類型是", reflect.TypeOf(str2)) fmt.Println("----------------- 類型轉(zhuǎn)換 ---------------------") var num3 int = 30 var num4 int64 num4 = int64(num3) fmt.Printf("num3 的類型是 %T ,num3= %v \n", num3, num3) fmt.Printf("num4 的類型是 %T ,num4= %v \n", num4, num4) var num5 int64 = 20 var num6 int num6 = int(num5) fmt.Printf("num5 的類型是 %T ,num5= %v \n", num5, num5) fmt.Printf("num6 的類型是 %T ,num6= %v \n", num6, num6) }
運(yùn)行結(jié)果:
intNum = 123456 , intNum 類型是 int
int64Num= 123456 , int64Num 類型是 int64
str1 = 123456 , str1 類型是 string
str2 = 123456 , str2 類型是 string
----------------- 類型轉(zhuǎn)換 ---------------------
num3 的類型是 int ,num3= 30
num4 的類型是 int64 ,num4= 30
num5 的類型是 int64 ,num5= 20
num6 的類型是 int ,num6= 20
2、總結(jié)
2.1、字符串 與 int 互轉(zhuǎn)
// 字符串 轉(zhuǎn) int intNum, _ := strconv.Atoi(testStr) // int 轉(zhuǎn) 字符串 var str1 string = strconv.Itoa(intNum2)
2.2、字符串 與 int64 互轉(zhuǎn)
// 字符串 轉(zhuǎn) int64 // 參數(shù)1:數(shù)字類型的字符串 // 參數(shù)2:數(shù)字字符串的進(jìn)制, 比如 2進(jìn)制、8進(jìn)制、10進(jìn)制、16進(jìn)制 // 參數(shù)3:bitSize,意思是string轉(zhuǎn)int64時的數(shù)值范圍的限制,如int8 int16 int32 int64 不同數(shù)字類型取值范圍是不一樣的 int64Num, _ := strconv.ParseInt(testStr, 10, 64) // int64 轉(zhuǎn) 字符串 // 參數(shù)1:int64類型的數(shù)字,如果是int、int8 int16 int32,則要使用int64(數(shù)字)轉(zhuǎn)換 // 參數(shù)2:表示int64數(shù)字要轉(zhuǎn)換什么進(jìn)制的字符串 , 比如 2進(jìn)制、8進(jìn)制、10進(jìn)制、16進(jìn)制。取值必須在2到36之間。 var str2 string = strconv.FormatInt(int64Num2, 10)
示例:
字符串 e
屬于16進(jìn)制,是10進(jìn)制中的14 。
var testStr3 string = "e" int64Num, _ := strconv.ParseInt(testStr3, 16, 8) fmt.Println("int64Num=", int64Num, ", int64Num 類型是", reflect.TypeOf(int64Num))
運(yùn)行結(jié)果:
int64Num= 14 , int64Num 類型是 int64
2.3、int 與 int64 互轉(zhuǎn)最簡單
var intNum int = int(int64位數(shù)字) var int64Num int64 = int64(int數(shù)字)
到此這篇關(guān)于golang 字符串 int uint int64 uint64 互轉(zhuǎn)的文章就介紹到這了,更多相關(guān)golang 字符串 int uint int64 uint64 互轉(zhuǎn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Go 庫bytes.Buffer和strings.Builder使用及性能對比
這篇文章主要為大家介紹了Go 庫bytes.Buffer和strings.Builder使用及性能對比,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12go語言中切片Slice與數(shù)組Array對比以及panic:?runtime?error:?index?out?
go語言中數(shù)組與其他語言有在顯著的不同,包括其不能夠進(jìn)行添加,以及值拷貝的特性,下面這篇文章主要給大家介紹了關(guān)于go語言中切片Slice與數(shù)組Array對比以及panic:?runtime?error:?index?out?of?range問題解決的相關(guān)資料,需要的朋友可以參考下2022-07-07Go語言如何使用golang-jwt/jwt/v4進(jìn)行JWT鑒權(quán)詳解
最近項目中需要用到鑒權(quán)機(jī)制,golang中jwt可以用,這篇文章主要給大家介紹了關(guān)于Go語言如何使用golang-jwt/jwt/v4進(jìn)行JWT鑒權(quán)的相關(guān)資料,需要的朋友可以參考下2022-09-09