`

java如何做到四舍五入

    博客分类:
  • java
阅读更多
java如何取得四舍五入的整数呢?其实Math包已经提供给你一个非常好的方法:round()
以下是jdk api的话:
round
public static int round(float a)
返回最接近参数的 int。结果将舍入为整数:加上 1/2,对结果调用 floor 并将所得结果强制转换为  int 类型。换句话说,结果等于以下表达式的值:

(int)Math.floor(a + 0.5f)
特殊情况如下:
如果参数为 NaN,那么结果为 0。
如果结果为负无穷大或任何小于等于 Integer.MIN_VALUE 的值,那么结果等于 Integer.MIN_VALUE 的值。
如果参数为正无穷大或任何大于等于 Integer.MAX_VALUE 的值,那么结果等于 Integer.MAX_VALUE 的值。

参数:
a - 要舍入为整数的浮点值。
返回:
舍入为最接近的 int 值的参数值。
另请参见:
Integer.MAX_VALUE,  Integer.MIN_VALUE
<!-- -->
round
public static long round(double a)
返回最接近参数的 long。结果将舍入为整数:加上 1/2,对结果调用 floor 并将所得结果强制转换为  long 类型。换句话说,结果等于以下表达式的值:

(long)Math.floor(a + 0.5d)
特殊情况如下:
如果参数为 NaN,那么结果为 0。
如果结果为负无穷大或任何小于等于 Long.MIN_VALUE 的值,那么结果等于  Long.MIN_VALUE 的值。
如果参数为正无穷大或任何大于等于 Long.MAX_VALUE 的值,那么结果等于  Long.MAX_VALUE 的值。

参数:
a - 舍入为 long 的浮点值。
返回:
舍入为最接近的 long 值的参数值。
另请参见:
Long.MAX_VALUE, Long.MIN_VALUE
这里涉及到一个方法:floor(),他是取得小于当前小数的最大整数;还有加上1/2这里运用的很巧妙
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics