为什么一个ceil函数给出不同的答案?

时间:2013-01-08 08:52:55

标签: java

我想在Math.ceil的简单计算中使用ceil。 但是,Math.ceil(3/2)给出1.0,而Math.ceil(1.5)给出2.0,为什么会这样? 我是否应该自己确定3/2上的天花板操作是否为2.0?

2 个答案:

答案 0 :(得分:7)

第一种情况等于Math.ceil(1),因为3/2是整数除法。

答案 1 :(得分:1)

3/2将返回int,因此我不会携带浮动值。但是(1.5)是浮动型 java中3/2 = 1,因此Math.ceil(1)= 1.0
所以 Math.ceil(3/2)将返回1.0。
和Math.ceil(1.5)将返回2.0