我在Java的某个地方发现了一个很奇怪的数字声明。

double x = 0xap-001;

我很好奇为什么x的值是5.0

最佳答案

p表示二进制幂。因此,您的十六进制0xa == 10,二进制指数为-1-换句话说,是右移或div2。结果是10/2 = 5。

09-16 05:32