【愚公系列】2022 年 7 月 Go 教学课程 009- 数据类型之浮点型
一、数据类型概要
go 语言中有四种数据类型:基础类型,复合类型,引用类型,接口类型。
二、浮点型
在 Go 语言中提供了两种精度的浮点型:float32 和 float64。
float32 的浮点数最大值约为 3.4e38, 可以通过 match 包的方法来获取: match.MaxFloat32。
float64 的浮点数最大值约为 1.8e308, 可以通过 match 包的方法来获取: match.MaxFloat64。
float32 精确到小数点后 7 位,float64 精确到小数点后 15 位。由于在 Go 中涉及到关于数学运算的包中,都要求使用 float64 这个类型。因为一个 float32 类型的浮点数可以提供大约 6 个十进制数的精度,而 float64 则可以提供约 15 个十进制数的精度;通常应该优先使用 float64 类型,因为 float32 类型的累计计算误差很容易扩散,并且 float32 能精确表示的正整数并不是很大(注意:因为 float32 的有效 bit 位只有 23 个,其它的 bit 位用于指数和符号;当整数大于 23bit 能表达的范围时,float32 的表示将出现误差):
案例:
复制代码
输出结果:
复制代码
版权声明: 本文为 InfoQ 作者【愚公搬代码】的原创文章。
原文链接:【http://xie.infoq.cn/article/df6b18857606d75d1955fc105】。文章转载请联系作者。
评论