不支持自动转换
在Golang中不支持对不同类型的变量进行自动转换
需要显示转换如:
var i float32 = 10.1
var n int32 = int32(i)
Go中类型转换不会引起类型的改变,只可能改变值。
就如这里i没有真的变成int32,需要一个新的int32来接收转换后的i。
函数接口
func ParseFloat(s string, bitSize int) (float64, error)
需要注意该函数返回值的类型总是为float64
的。
即使将bitSize
指定为32,返回的值的类型仍然为float64
,只是此时返回值存的值是float32
类型的。
可以做如下转换:
var f64 float64 //必须是float64的参数来接收返回值
f64, _ = strconv.ParseFloat(str, 32)
var f32 float32 = float32(f64)