在实际开发中我们往往需要对一些常用的数据类型进行转换,如 string、int、float 等数据类型之间的转换,而Go语言中的 strconv 包为我们提供了基本数据类型之间的转换功能
首先我们需要调用一个Go内置的包"strcon",如下所示
import (
"fmt"
"strconv" //提供类型转换功能的包
)
1.若要实现int类型转变为string类型,我们需要调用 Itoa() 函数
func Itoa(i int) string
示例如下:
func main() {
i := 123
fmt.Printf("%#v,%T\n", i, i)
c := strconv.Itoa(i)
fmt.Printf("%#v,%T\n", c, c)
}
运行结果:
123,int
“123”,string
2.若要实现string类型转变为int类型,需要调用 Atoi() 函数
func Atoi(s string) (i int, err error)
注:通过观察我们可以注意到此函数具有两个返回值,i为我们转换成功的整形,err为转换失败时提示的错误信息,成功时则为空转换
示例如下:
func main(){
c1 := "123"
c2 := "c123"
fmt.Printf("%v,%T\n",c1,c1)
fmt.Printf("%#v %T\n",c2,c2)
i1,err := strconv.Atoi(c1)
if err != nil {
fmt.Printf("%v 转换失败!", i1)
} else {
fmt.Printf("%v %T\n", i1, i1)
}
i2,err := strconv.Atoi(c2)
if err != nil {
fmt.Printf("%v 转换失败!", i2)
} else {
fmt.Printf("%v %T\n", i2, i2)
}
}
运行结果:
“123”,string
“c123” string
123 int
0 转换失败!