小编典典

如何确定双精度的最大精度

java

我试图确定双精度的最大精度是多少。在此链接的可接受答案的注释中,Java中的double保持精度 @PeterLawrey将max precision设置为15。

您如何确定呢?


阅读 512

收藏
2020-09-28

共1个答案

小编典典

@PeterLawrey表示最大精度为15。

实际上,这根本不是他所说的。他说的是:

双精度有15个小数位

他错了。它们的精度为15个十进制 数字

任何数字中的小数位数由其对数10的对数给出。15是对数10的下限值(2 53
-1),其中53是尾数的位数(包括隐含的位),如下所示因此,Javadoc和IEEE 754中描述的“ 2 53
-1”是最大可能的尾数。实际值是15.954589770191003298111788092734,为Windows计算器的限制。

他将其描述为“精确的小数位”是完全错误的。如果A 的精度 均在小数点之前,则它们 的精度为double15个小 数位数
对于带小数部分的数字,由于十进制和二进制小数的不可通约性,您可以用十进制表示形式获得超过15位的数字。

2020-09-28