为什么 Math.ceil 会返回双精度值?
2022-08-31 12:48:35
当我调用返回时是 .我的自然倾向是认为这会返回.从文档中:Math.ceil(5.2)
double
6.0
Math.ceil(double a)
long
ceil(double a)
返回最小(最接近负无穷大)值,该值不小于参数并等于数学整数。
double
但是,当结果是整数时,为什么要返回 a 而不是 a 呢?我认为理解它背后的原因可能有助于我更好地理解Java。它也可能帮助我弄清楚,我是否会因为投掷到一个,例如double
long
long
long b = (long)Math.ceil(a);
总是我认为它应该是什么?我担心可能会有一些有问题的边界案例。