Java 为什么指数科学记数法要用双精度
为什么在java中将指数添加到double? e、 g:10000000(10^7)java双精度:1.0E7 为什么会这样 java为什么要在double中添加指数 因为这就是他们定义方法的方式,如所述 他们为什么这样定义它 因为Java 为什么指数科学记数法要用双精度,java,Java,为什么在java中将指数添加到double? e、 g:10000000(10^7)java双精度:1.0E7 为什么会这样 java为什么要在double中添加指数 因为这就是他们定义方法的方式,如所述 他们为什么这样定义它 因为double可以将值存储在4.9e-324(double.MIN_值)到1.7976931348623157e308(double.MAX_值)的范围内。由于它只有大约17位精度,如果不是用科学记数法格式化的话,这些极值的格式大约是300个零。那会有用吗 让我们看一个
double
可以将值存储在4.9e-324
(double.MIN_值
)到1.7976931348623157e308
(double.MAX_值
)的范围内。由于它只有大约17位精度,如果不是用科学记数法格式化的话,这些极值的格式大约是300个零。那会有用吗
让我们看一个例子。以下哪一项更有用
见问题答复:1.2⋅ 1057 在Java中,可以打印为:
- 科学记数法:
1.2E57
- 十进制表示法:
1200000000000000000000000000000000000000000000000000000000
更新 为什么它在107岁时就换成了科学记数法
可能是因为他们想同时切换
float
和double
,而float
的精度只有7位左右。这样,它就不会打印由于精度不足而导致的尾随零。Java打印带有指数的双精度(默认情况下)。double到字符串的转换是非常重要的。double没有添加符号,数字本身没有符号;它是用符号表示的(作为字符串)。也许你可以用它来获得适当的格式