java理解math.getexponent(double)

x6yk4ghg  于 2021-06-26  发布在  Java
关注(0)|答案(1)|浏览(413)
Double dble = new Double("2.2737367544323201e-13");
int exponent = Math.getExponent(dble);

我有上面的代码,指数的值是'-43'。当传递的双精度值包含“-13”时,我不确定指数是如何为“-43”的。有人能解释一下这个api吗?
谢谢,伙计

gijlo24d

gijlo24d1#

Math.getExponent() 返回数字的二进制表示形式的指数。在您的示例中,-13是十进制表示的指数,-43是二进制表示的指数。
例如,

System.out.println (Math.getExponent (1024));

印刷品

10

自从

1024 = 2 ^ 10

所以指数是10。

System.out.println (Math.getExponent (1.0/8192));

将打印

-13

自从

1.0/8192 = 2 ^ (-13)

相关问题