首页
Java
登录
6mi
u
盘
搜
搜 索
Java
java中的Double为什么不能精确处理数据
java中的Double为什么不能精确处理数据
xiaoxiao
2023-03-22
70
如果用double类型数据来计算浮点数的化,会损失精度,如用System.out.println(1.0d-0.9d)将向控制台输出0.09999999999999998,而不是0.1,出现这种问题主要原始是因为浮点数数值采用二进制表示,在二进制系统之无法精确表示1/10,就像十进制无法表示1/3一样,这样就产生了误差,如果想尽量避免误差,就应用BigDecimal类来运算,尤其是在金融领域. strictfp修饰符来标记方法或者类,只能进行严格的浮点运算,却不能避免上面的错误
转载请注明原文地址: https://www.6miu.com/read-4987485.html
Java
最新回复
(
0
)