Golang学习之路(七):Golang类型转换

x33g5p2x  于2021-11-30 转载在 Go  
字(1.0k)|赞(0)|评价(0)|浏览(757)

一、int与float互转

1)int转float

var a int =1
	b :=float32(a)
	c :=float64(a) //数位越高精度越高,但占用的内存越多

2)float转int

var a float32 =1.2
	b :=int8(a)
	c :=int16(a) //数位越高精度越高,但占用的内存越多

二、其他类型转string

1)int转string

var a int =2
	b :=fmt.Sprintf("%d",a) //第一种方法
	c :=strconv.Itoa(a) //第二重方法

2)int64转string

var i64 int64=131
	string := strconv.FormatInt(i64,10)

3)bool转string

bol :=false
	b :=fmt.Sprintf("%v",bol)  //还可以是%t
	c :=strconv.FormatBool(bol) //第二种方法

4)float转string

fl :=1.32321112122121357
	//参数说明:strconv.FormatFloat(待转变量,格式标记(f:无指数,b:二进制指数,e:十进制指数 ....),精度(转换后的长度),指定浮点类型(32:float32,64:float64))
	c :=strconv.FormatFloat(fl,'f',5,32) //第二种方法

三、string转其他类型

1)string转int

str :="12"
	// i 代表转换后的结果;err代表错误信息,如果无错误则值为nil
	i,err :=strconv.Atoi(str)

2)string转int32

str :="123"
	//参数说明:strconv.ParseInt(待转变量,转换进制,转换位数)
	i,err :=strconv.ParseInt(str,10,32)

3)string转bool

bl :="false"
	//接受 1, t, T, TRUE, true, True, 0, f, F, FALSE, false, False 等字符串;
	b, err := strconv.ParseBool(bl)

4)string转float

f :="123.456"
	// f64 代表转换后的结果;err代表错误信息,如果无错误则值为nil
	f64, err := strconv.ParseFloat(f, 64) //指定为64位

相关文章