深色模式
Go语言int与string互相转换
int
转换为 string
使用 fmt.Sprintf
go
import "fmt"
num := 123
str := fmt.Sprintf("%d", num) // str 现在是 "123"
使用 strconv.Itoa
go
import "strconv"
num := 123
str := strconv.Itoa(num) // str 现在是 "123"
使用 strconv.FormatInt
go
import "strconv"
num := int64(123)
str := strconv.FormatInt(num, 10) // str 现在是 "123"
说明:
- 第一个参数是要转换的
int64
类型整数。 - 第二个参数是进制,
10
表示十进制。
string
转换为 int
使用 strconv.Atoi
go
import (
"strconv"
"fmt"
)
str := "123"
num, err := strconv.Atoi(str)
if err != nil {
// 处理错误
fmt.Println(err)
}
fmt.Println(num) // num 是 123
使用 strconv.ParseInt
go
import (
"strconv"
"fmt"
)
str := "123"
num64, err := strconv.ParseInt(str, 10, 0)
if err != nil {
// 处理错误
fmt.Println(err)
}
num := int(num64)
fmt.Println(num) // num 是 123
注意
- 错误处理:在将
string
转换为int
时,输入的字符串必须是有效的数字,否则会返回错误,需进行错误处理。 - 进制和位大小:
strconv.ParseInt
可以指定进制(如二进制、十进制)和位大小(如 8、16、32、64 位)。 - 性能考虑:对于简单的转换,
strconv
包的函数通常比fmt
包的函数性能更好。