数学战能量返回1.0

时间:2017-01-21 16:44:44

标签: java android

我是java dev中的新手,所以这可能是一个微不足道的问题:

double u130 = (1 / 30);
double q1 = Math.pow(1.025, u130);

q1等于1.0,但应该是1.0008234259155

u130 = 0.0也错了。

我的理解是双倍的小数位,所以问题在哪里?

顺便说一下,我在Android设备上测试,这应该是一个限制?!

由于

2 个答案:

答案 0 :(得分:5)

1 / 30 euclidian分部,因此结果为0int)。

相反,您需要真正的部门:

double u130 = 1. / 30;
double q1 = Math.pow(1.025, u130);

答案 1 :(得分:0)

这可以解决您的问题:

    double u130 = (1 / (double)30);
    double q1 = Math.pow(1.025, u130);