原始数字的范围 - 双

时间:2013-05-21 20:23:09

标签: java

我正在学习原始类型的范围,我对类型double有疑问。

如果我们知道double有8个字节(64位) - 为什么无法确定double的最小和最大范围?

long也有8个字节,但我们可以确定最小值和最大值。

3 个答案:

答案 0 :(得分:1)

非常确定这是最大和最小范围:

  

MAX_VALUE             一个常数,保持double类型的最大正有限值,(2-2 -52 )·2 1023

     

MIN_VALUE             保持double类型的最小正非零值的常量,2 -1074

根据docs,这两个函数都返回一个原始的双精度。

答案 1 :(得分:1)

我不知道我们不会确定双倍的最小和最大范围。快速谷歌搜索显示:

Double涵盖范围从4.94065645841246544e-324d到1.79769313486231570e + 308d(正面或负面)。

如果你看一下这个问题,你可以找到更多信息:What is the inclusive range of float and double in Java?

答案 2 :(得分:0)

双打不会以相同的方式存储多头或整数。

它的存储类似于科学记数法。

即一定数量的有效数字和一个权力。

编辑,上面的答案表明有最小值和最大值。然而,这是由于对双倍功率分量有多高的限制(即它只能占用这么多位)。