Go 小数类型/浮点型的使用

小数类型/浮点型的使用


  • 小数类型
    • 小数类型就是用于存放小数的,比如 1.2 0.23 -1.911
  • 演示案例
package main 
import(
	"fmt"
)
//演示golang中小数类型的使用
func main()  {
	var price float32 = 54.67
	fmt.Println("price = ", price)
}
  • 输出结果


  • 浮点型分类

  • 说明
    • 关于浮点数在机器中存放形式的简单说明浮点数=符号位+指数位+尾数位
      • 注:浮点数都是有符号的
  • 演示
package main 
import(
	"fmt"
)

func main()  {
	var n1 float32 = -0.000345
	var n2 float64 = -36274672.005
	fmt.Println("n1 = ", n1, "n2 = ", n2)
}
  • 输出结果


  • 浮点数=符号位+指数位+尾数位,尾数部分可能丢失,造成精度损失
  • 案例
package main 
import(
	"fmt"
)

func main()  {
	var n1 float32 = -123.0000789
	var n2 float64 = -123.0000789
	fmt.Println("n1 = ", n1, "n2 = ", n2)
}
  • 输出结果

  • 说明:
    • float64 的精度比 float32 的要准确
    • 如果我们要保存一个精度高的数,则应该选用 float64
    • 浮点型的存储分为三部分:符号位+指数位+尾数位 在存储过程中,精度会有丢失

  • 浮点类型使用细节:
    • Golang 浮点类型有固定的范围和字段长度,不受具体 OS(操作系统)的影响
    • Golang 的浮点型默认声明为 float64 类型。
package main 
import(
	"fmt"
)
//Golang 的浮点型默认声明为 float64 类型
func main()  {
	var n1 = 1.414
	fmt.Printf("n1 的数据类型是 %T ", n1 )
}
  • 输出结果为:


  • 浮点型常量有两种表示形式
    • 十进制数形式:如:5.12       .512 (必须有小数点
    • 科学计数法形式如:5.1234e2 = 5.12 * 10 2 次方 5.12E-2 = 5.12/10 2 次方
  • 十进制数形式案例
//十进制数形式:如:5.12 .512 (必须有小数点)
n1 := 1.414
n2 := .1415
fmt.Println("n1 = ", n1 , "n2 = ", n2 )
  • 输出结果


  • 科学计数法形式案例
//5.1234e2 = 5.12 * 10 的 2 次方 
n1 := 5.1234e2 
//5.12E-2 = 5.12/(10 的 2 次方)
n2 := 5.12E-2
fmt.Println("n1 = ", n1 , "n2 = ", n2 )
  • 输出结果

  • 备注:
    • 通常情况下,应该使用 float64 ,因为它比 float32 更精确。[开发中,推荐使用 float64]
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值