我在android的计算中有问题,我正在做计算。
(1 *(1+(0.025* 12) * ((6-1) /12))/ 6);
在php中生成值
echo ((1*(1+((0.025*12)*((6-1)/12))))/6);结果:
0.1875
但在android系统中:
System.out.println(((1*(1+((0.025*12)*((6-1)/12))))/6));结果:
0.16666666666666666
我已经尝试过对十进制值做四舍五入,但是结果是不同的。我如何做准确的计算,以便能够调整到给定的php值?
提前谢谢你。
发布于 2017-07-14 11:27:26
您需要将所有十进制数的返回值转换为双小数或浮点数,以获得所有小数。它将默认为整数,这意味着您丢失了一些数据。
双d=( (1 *(1+(0.025* 12) *(( double )(6-1)/12))/6);
给1.875
双f=( (1 *(1+(0.025* 12) *((6-1)/12))/6);
给1.666666666
https://stackoverflow.com/questions/45101560
复制相似问题