Go语言数据类型转换
go语言是静态语言, 定义, 赋值, 运算必须类型一致。类型转换是─种将变量从一种数据类型转换为另一种数据类型的方法。
Go 提供了将一种数据类型转换为另一种数据类型的一些本机方法。 例如,一种方法是对每个类型使用内置函数,如下所示:
var integer16 int16 = 127
var integer32 int32 = 32767
fmt.println(int32(integer16) + integer32)
Go 的另一种转换方法是使用 strconv 包
整形到字符串:
var i int = 5
var s string
s = strconv.Itoa(i) 或者 s = FormatInt(int64(i), 10)
字符串到整形
var s string = "5"
var i int
i, err = strconv.Atoi(s) 或者 i, err = ParseInt(s, 10, 0)
字符串到float(32 / 64)
var s string = 5
var f float32
f, err = ParseFloat(s, 32)
float 64的时候将上面函数中的32转为64即可
整形到float或者float到整形 直接使用float(i) 或者 int(f) 直接进行转换即可
判断变量是否可以转换成某一个类型
switch i := x.(type) {
case nil:
printString(“x is nil”) // type of i is type of x (interface{})
case int:
printInt(i) // type of i is int
case float64:
printFloat64(i) // type of i is float64
default:
}