Java 了解 Math.getExponent(双)
Java Understanding Math.getExponent(Double)
Double dble = new Double("2.2737367544323201e-13");
int exponent = Math.getExponent(dble);
我有上面的代码,指数的值为“-43”。当传递的双精度值包含“-13”时,我不确定指数如何为“-43”。有人可以阐明这个 API 吗?
Math.getExponent()
returns 数字的二进制表示的指数。在您的示例中,-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)
Double dble = new Double("2.2737367544323201e-13");
int exponent = Math.getExponent(dble);
我有上面的代码,指数的值为“-43”。当传递的双精度值包含“-13”时,我不确定指数如何为“-43”。有人可以阐明这个 API 吗?
Math.getExponent()
returns 数字的二进制表示的指数。在您的示例中,-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)