为什么Double.MIN_VALUE不为负
任何人都可以阐明为什么Double.MIN_VALUEDoubles
实际不能使用的最小值吗?它是一个正值,而Double可以当然是负值。
我理解为什么它是一个有用的数字,但它似乎是一个非常不直观的名称,尤其是与相比Integer.MIN_VALUE
。调用它Double.SMALLEST_POSITIVE
或MIN_INCREMENT
类似名称将具有更清晰的语义。
另外,Doubles可以取的最小值是多少?是-Double.MAX_VALUE
吗 该文档似乎没有说。
回答:
IEEE 754格式保留一位用于符号,其余位表示幅度。这意味着它在origo周围是“对称的”(与Integer值相反,后者具有一个更大的负值)。因此,最小值与最大值完全相同,但符号位已更改,因此是的,-Double.MAX_VALUE
是可以用表示的最小实际数字double
。
我想Double.MAX_VALUE
应该将其视为最大幅度,在这种情况下,简单地写实际上是有意义的-Double.MAX_VALUE
。它还说明了为什么Double.MIN_VALUE
正值最小(因为它表示最小的幅度)。
但是可以肯定的是,我同意命名有点误导。习惯了这个含义Integer.MIN_VALUE
,当我读到那Double.MIN_VALUE
是可以表示的最小绝对值时,我也感到有些惊讶。也许他们认为用常数表示最小可能值是多余的,因为它只是-远离MAX_VALUE:-
)
(请注意,这里也有,Double.NEGATIVE_INFINITY
但我不予理,,因为这被视为“特殊情况”,实际上并不代表任何实际数字。)
以上是 为什么Double.MIN_VALUE不为负 的全部内容, 来源链接: utcz.com/qa/432243.html