golang中的类型转换
在golang中有个包叫做strconv,我们在引入这个包之后,去调用其中的Atio方法,该方法是把string转换为int
1、string转成int:
int, err := strconv.Atoi(string)
2、ParseInt是把string转换为int64
string转成int64:
int64, err := strconv.ParseInt(string, 10, 64)
3、Itoa是把int转换为string
int转成string:
string := strconv.Itoa(int)
4、formatInt是把int64转换为string
int64转成string:
string := strconv.FormatInt(int64,10)
5、字符串到float32/float64
float32, err = ParseFloat(string, 32)
float64,err = ParseFloat(string,64)
6、int64转int
int:=int(int64)
7、int转int64
int64:=int64(int)
二、interface{}与其他类型之间的转换
转换方式包括隐式转换与断言转换。 1、interface{}类型转换成具体类型:interfaceVar.(具体类型)
原理:断言实现。如:
断言成功返回true,失败返回false
value, ok := a.(string)
if !ok {
fmt.Println("It's not ok for type string")
return
}
fmt.Println("The value is ", value)
2、具体类型可以隐式转换成interface{}类型
3、string与[]byte之间的转换:
string到[]byte:字节数组=[]byte(字符串)
字节数组到string: 字符串=string([]byte)