Java:如何获得正确的结果?

时间:2015-04-01 12:02:49

标签: java math double

在java中:

double b = 1234 / (1234+1500);

结果是:

0.0

为什么?

如何获得正确的结果?

3 个答案:

答案 0 :(得分:1)

double b = 1234D / (1234D + 1500D)

答案 1 :(得分:0)

只需制作一个操作数double / float -

double b = (double) 1234.0/(1235+1500);

此处不需要施法。

规则benind :如果其中一个操作数为double / float(此处为1234.0),则另一个提升为double / {{1} }。

答案 2 :(得分:0)

你得到0.0,因为java将是一个整数除法。要获得正确的结果,您必须至少将运算符强制转换为double

double b = ((double)1234) / (1234+1500)