本篇内容介绍了“go语言如何将整型转为字符串”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
转换方法:1、用fmt包的Sprintf(),支持格式化变量转为字符串,语法“fmt.Sprintf("%d", num)”;2、用strconv包的Itoa(),支持将int类型转换成字符串,语法“strconv.Itoa(num)”;3、用strconv包的FormatInt(),支持将int64类型转换成字符串,语法“strconv.FormatInt(num,10)”。
在实际开发中我们往往需要对一些常用的数据类型进行转换,如 string、int、int64、float 等数据类型之间的转换。
int整数转字符串
1、fmt.Sprintf
fmt 包应该是最常见的了,从刚开始学习 Golang 就接触到了,写 ‘hello, world’ 就得用它。它还支持格式化变量转为字符串。%d 代表十进制整数。
//Sprintf formats according to a format specifier and returns the resulting string. func Sprintf(format string, a ...interface{}) string
使用示例:
str := fmt.Sprintf("%d", a)
2、strconv.Itoa
Go语言中的 strconv 包为我们提供了字符串和基本数据类型之间的转换功能。strconv 包中常用的函数包括 Atoi()、Itia()、parse 系列函数、format 系列函数、append 系列函数等。
其中Itoa()函数支持 int 类型转换成字符串
//Itoa is shorthand for FormatInt(int64(i), 10). func Itoa(i int) string
使用示例:
func main() { num := 100 str := strconv.Itoa(num) fmt.Printf("type:%T value:%#v ", str, str) }
运行结果如下所示:
3、strconv.FormatInt
支持 int64 类型转换成字符串
参数 i 是要被转换的整数, base 是进制,例如2进制,支持2到36进制。
//FormatInt returns the string representation of i in the given base, for 2 <= base <= 36. The result uses the lower-case letters ‘a' to ‘z' for digit values >= 10. func FormatInt(i int64, base int) string
使用示例:
str := strconv.FormatInt(a, 10)
扩展知识:字符串转int整数
1、strconv.Atoi
比较常见的方法
// Atoi returns the result of ParseInt(s, 10, 0) converted to type int. func Atoi(s string) (int, error)
使用示例:
i,err := strconv.Atoi(a)
2、strconv.ParseInt
功能非常强大
// ParseInt interprets a string s in the given base (0, 2 to 36) and // bit size (0 to 64) and returns the corresponding value i. func ParseInt(s string, base int, bitSize int) (i int64, err error)
参数1 数字的字符串形式
参数2 数字字符串的进制 比如二进制 八进制 十进制 十六进制
参数3 返回结果的bit大小 也就是int8 int16 int32 int64
使用示例:
i, err := strconv.ParseInt("123", 10, 32)