使用 strconv.Itoa 将整数转字符串,如 str := strconv.Itoa(123);用 strconv.Atoi 将字符串转整数并检查错误,如 num, err := strconv.Atoi(“789”);需注意输入合法性与类型范围。
在go语言中,整数与字符串之间的转换是常见操作。标准库提供了简单高效的方法来完成这些转换,主要通过 strconv 包实现。
整数转字符串
将整数(int 类型)转换为字符串,推荐使用 strconv.Itoa 函数,它是 “Integer to ASCII” 的缩写。
示例:
package main import ( "fmt" "strconv" ) func main() { num := 123 str := strconv.Itoa(num) fmt.Println(str) // 输出: 123 }
你也可以使用 fmt.Sprintf,它更灵活,适合拼接场景:
str := fmt.Sprintf("%d", 456) fmt.Println(str) // 输出: 456
字符串转整数
将字符串转换为整数使用 strconv.Atoi,它是 “ASCII to integer” 的缩写。该函数返回整数和一个错误,需要检查转换是否成功。
立即学习“go语言免费学习笔记(深入)”;
示例:
str := "789" num, err := strconv.Atoi(str) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println(num) // 输出: 789
如果需要指定进制或位数,可使用更通用的 strconv.ParseInt:
num, err := strconv.ParseInt("1000", 10, 64) // 10进制,64位 if err != nil { fmt.Println("解析失败:", err) return } fmt.Println(num) // 输出: 1000
注意事项
处理用户输入或外部数据时,字符串转整数务必检查返回的 Error,避免程序崩溃。
确保字符串内容是合法整数,比如空字符串、字母或符号会导致转换失败。
不同整数类型(如 int32、int64)在转换时要注意范围,避免溢出。
基本上就这些。用 strconv.Itoa 和 strconv.Atoi 能满足大多数场景,需要更多控制时再考虑 ParseInt 或 Sprintf。不复杂但容易忽略错误处理。
评论(已关闭)
评论已关闭