当前位置: 首页 > 面试题库 >

为什么Double.MIN_VALUE不为负

令狐宏浚
2023-03-14
问题内容

任何人都可以阐明为什么Double.MIN_VALUEDoubles实际不能使用的最小值吗?它是一个正值,而Double可以当然是负值。

我理解为什么它是一个有用的数字,但它似乎是一个非常不直观的名称,尤其是与相比Integer.MIN_VALUE。调用它Double.SMALLEST_POSITIVEMIN_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可以当然是负值。 我理解为什么它是一个有用的数字,但它似乎是一个非常不直观的名称,尤其是与相比。 调用它或类似名称将具有更清晰的语义。 另外,Doubles可以取的最小值是多少?是-Double.MAX_VALUE吗 该文档似乎没有说。 问题答案: IEEE 754格式保留一位用于符号,其余位表示幅度。这意味着它

  • 由于这在开发者社区中是一个非常有争议的话题,所以随着我们更深入的理解并结合收到的反馈,我们将不断更新这篇博客。我也想推出一些限定词,所以大家都明白我们来自哪里。 我们的公司由我的联合创始人和首席技术官,瑞恩·坎贝尔领导,一位拥有18年的经验的软件架构师,过去10年在大型企业。 当我们决定使用Angular 2时,他已经熟悉Angular 1了。但是,在决定使用Angular之前,我们还在React

  • 问题内容: 我想将jsoup解析为utf -8,但我不能。我尝试了我所知道的一切,然后在Google上进行了搜索。 我的目标是: 但是 不是。 请帮忙 问题答案: 淘汰 你好世界Öçasasa

  • 问题内容: 我正在将值放入形式的哈希图中, 我想使用map方法创建一个列表。 要么 但是,它将引发异常: 线程“主”中的异常java.lang.ClassCastException: java.util.HashMap $ Values无法转换为java.util.List 但是它允许我将其传递给列表的创建: 问题答案: 说明 因为返回a ,而不能将a 转换为an ,所以得到。 我建议使用构造函数

  • 问题内容: 这是疏忽吗?还是与JVM有关? 问题答案: Java确实有指针-无法在其上执行指针算术的指针。 从古老的JLS: Java编程语言中有两种类型:基本类型(第4.2节)和引用类型(第4.3节)。相应地,可以将两种数据值存储在变量中,作为参数传递,由方法返回并对其进行操作:原始值(第4.2节)和引用值(第4.3节)。 而后来: 一个 对象 是一个 类的实例 或 阵列 。 引用值(通常只是

  • 问题内容: 使用代替或的优点是什么? 问题答案: Thread和Runnable是Java 1.0的一部分;他们和当时一样出色。 从那时起,新的并发类将提炼出关于多线程的所有知识(感谢您,Doug Lea和其他人)。编写多线程代码非常困难。包括SwingWorker在内的新的并发类都试图使其变得更容易。 首先请注意用于强类型键入的泛型。有内置的机制可以发布和处理最终结果和中间结果。 可以使用Thr