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

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

一、int与float互转

1)int转float

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

2)float转int

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

二、其他类型转string

1)int转string

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

2)int64转string

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

3)bool转string

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

4)float转string

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

三、string转其他类型

1)string转int

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

2)string转int32

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

3)string转bool

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

4)string转float

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

相关文章

最新文章

更多