golang float string int 相互转换 保留小数位

àì夳堔傛蜴生んèń 2021-09-03 09:55 794阅读 0赞

目录

string 转换为 float

int 转化为 float

转换为 string,并保留3位小数

无论是 32位系统还是 64 位系统,都支持 float64


string 转换为 float

  1. package main
  2. import (
  3. "fmt"
  4. "strconv"
  5. )
  6. func main() {
  7. input := "3.14"
  8. f_input, _ := strconv.ParseFloat(input, 64)
  9. fmt.Printf("%f - %T", f_input, f_input)
  10. }

执行结果

  1. > go run main.go
  2. 3.140000 - float64

int 转化为 float

  1. score := 100
  2. f_score := float64(score)
  3. fmt.Printf("%f - %T\n", f_score, f_score)
  4. > 100.000000 - float64

转换为 string,并保留3位小数

  1. s_score := fmt.Sprintf("%.3f", f_score)

注意,这样保留3位小数会自动四舍五入。

无论是 32位系统还是 64 位系统,都支持 float64

ubuntu 查看系统是 32 位还是 64 位

  1. > uname -a
  2. Linux 509B65C8YW2THMJ 4.4.0-18362-Microsoft #1-Microsoft Mon Mar 18 12:02:00 PST 2019 x86_64 x86_64 x86_64 GNU/Linux

因为32位只是寄存器的一次处理的位数。配合不同的算法,多大的数字都可以处理。

发表评论

表情:
评论列表 (有 0 条评论,794人围观)

还没有评论,来说两句吧...

相关阅读