有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在Java公式中四舍五入到十是没有意义的

我发现了这个公式,但我不知道它是如何工作的:

(n + 5) / 10 * 10

这将一个数字四舍五入到十的倍数,但当我计算它时,它只是除以并乘以n+5。这实际上是如何工作的

示例(Java语言):

(24 + 5) / 10 * 10 = 20

而据我所知应该是29


共 (1) 个答案

  1. # 1 楼答案

    您正在int上执行这些操作。这就是为什么,每个操作结果也是一个int。发生的情况是:

    (24 + 5) = 29

    29 / 10 = 2(因为分数部分总是以整数形式删除)

    2 * 10 = 20

    此舍入方法仅适用于floatdouble。您可以尝试将int强制转换为double