如何将十进制数四舍五入为整数。
3.50 => 4
4.5 => 5
3.4 => 3
你如何在 Java 中做到这一点?谢谢!
具有标准的舍入功能? Math.round()
还有Math.floor()
和Math.ceil()
,这取决于您的需要。
You can use
int i = Math.round(f);
long l = Math.round(d);
where f
and d
are of type float
and double
, respectively.
如果你只使用正数,你也可以使用 int i = (int)(d + 0.5)。
编辑:如果你想将负数向上舍入(例如,向正无穷大,例如 -5.4 变为 -5),你也可以使用它。如果您想四舍五入到更高的量级(四舍五入-5.4 到-6),建议您使用另一个答案提出的其他函数。
Java provides a few functions in the Math class to do this. For your case, try Math.ceil(4.5)
which will return 5.
new BigDecimal(3.4);
Integer result = BigDecimal.ROUND_HALF_UP;
或者
Int i = (int)(202.22d);
使用 Math.max 你可以这样做:
(int) Math.max(1, (long) Math.ceil((double) (34) / 25)
这会给你 2