为什么将指数科学计数法添加到Double中

问题描述 投票:0回答:1

我曾尝试将String转换为Double,将String转换为BigDecimal转换为Double,但每次都将指数科学计数法添加为double。

我已经使用过parseDouble(),Double.valueOf(),bigInteger.DoubleValue()方法,但是每次都添加指数。

Java为什么要在双精度中增加指数?

java
1个回答
0
投票

Java为什么要在双精度中增加指数?

因为这就是他们将Double.toString(double d)方法定义为documented的方式。

他们为什么这样定义它?

因为Double.toString(double d)可以存储double4.9e-324)到Double.MIN_VALUE1.7976931348623157e308)范围内的值。由于它的精度只有17位左右,因此,如果不采用科学计数法的格式,则这些极值的格式将约为300个零。会有用吗?

让我们看一个例子。其中哪个更有用?

请参阅问题Double.MAX_VALUE答案:1.2⋅10 57

在Java中,可以打印为:

其中哪些更易于阅读和解释?

© www.soinside.com 2019 - 2024. All rights reserved.