【发布时间】:2015-02-23 05:17:06
【问题描述】:
Java 中 double 可以表示的最大整数值是多少?点后的最大位数可以表示的最大值是多少?它是否取决于点之前的位数取决于点之后的最大位数? Double 类中有两个字段:MAX_VALUE 和 MIN_VALUE。 MAX_VALUE 是什么意思?
【问题讨论】:
-
您认为
MAX_VALUE可能意味着什么?或许,是用来表示小数点的字符? -
“点后的最大位数”是什么意思?例如如果数字为零,则在点 (0.00000000000000000000000...) 之后可以有无限多个零。
-
浮点数由符号位、指数位和尾数位(二进制数字)组成。所以 MAX_VALUE 类似于 (base 2)
0.11111111 * 2^11111。一般来说,请注意许多缺点以及在哪里使用(丑陋的冗长)BigDecimal。Math.nextUp(double)将给出可能超过 1 的相邻双精度。