Math.ceil返回0.0?

时间:2012-04-21 13:07:39

标签: java math

所以我正在开发一个Java项目,我输入了这个:

double totalPages;
int amountKits = 2;
totalPages = amountKits / 3;
System.out.println("Total pages before ceil: " + totalPages);
totalPages = Math.ceil(totalPages);
System.out.println("Amount of Kits: " + amountKits);
System.out.println("Total Pages: " + totalPages);

结果如下:

Total pages before ceil: 0.0
Amount of Kits: 2
Total Pages: 0.0

有谁知道为什么会这样? (对不起,我是个菜鸟,我知道)

2 个答案:

答案 0 :(得分:7)

因为你在整数算术中计算2 / 3

尝试:

totalPages = amountKits / 3.0;

代替。

答案 1 :(得分:3)

2/3整数除法,返回0.然后,当您分配给totalPages时,它会转换为浮点值0.0。

您需要执行浮点除法,例如编写amountKits/3.0