我有一个代码
private float roundAwayFrom0(float value) {
float abs = Math.abs(value);
float sign = (value == 0) ? 1 : value / (abs);
return (sign * (Math.round(abs)));
}
当时
sign = -1f
和 Math.round(abs)= 0
我原以为结果应该是0.0f
但实际值是-0.0f
。什么神奇的?