计算机二级《Java语言程序设计》知识点:浮点型数据

计算机二级《Java语言程序设计》知识点:浮点型数据,第1张

计算机二级《Java语言程序设计》知识点:浮点型数据

Java的浮点类型有两种:float和double。Java的浮点类型有固定的表数范围和字段长度,字段长度和表数范围和机器无关。Java的浮点数遵循IEEE754标准,采用二进制数据的科学计数法来表示浮点数,对于float型数值,第1位是符号位,接下里8位表示指数,再接下来的23位表示尾数;对于double类型数值,第一位也是符号位,接下来的11位表示指数,再接下来的52位表示尾数。

因为Java浮点数使用二进制数据的科学记数法来表示浮点数,因此可能不能精确表示一个浮点数,使用double类型的浮点数比float类型的浮点数更精确,但如果浮点数的精度足够高,依然可能发生这种情况,如果开发者需要精确保存一个浮点数,则可以考虑使用BigDecimal类。

double类型代表双精度浮点数,float类型代表单精度浮点数。一个double类型的数值占8字节、64位,一个float类型的字节占4字节,32位。Java语言的浮点数有两种表现形式:

十进制数形式:这种形式就是简单的浮点数,例如5.12、512.0、.512 。浮点数必须包含一个小数点,否则会被当成int类型处理。

科学记数法形式:例如5.12e2,5.12E2,表达的值是一样的。

必须指出的是,只有浮点类型的数值才可以使用科学记数法的形式来表示。例如,51200是一个int类型的值,但是512E2则是浮点类型的值。

Java语言的浮点类型默认是double类型,如果希望Java把一个浮点类型值当成float类型处理,应该在这个浮点类型值后紧跟f或F。例如,5.12代表一个double类型的值,占64位的内存空间;5.12f或5.12F才表示一个float类型的值,占32位的内存空间。当然,也可以在一个浮点数后添加d或D后缀,强制指定double类型,但通常没必要。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/5389239.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-10
下一篇2022-12-10

发表评论

登录后才能评论

评论列表(0条)

    保存