Java四舍五入

之前写的,总结成代码片段,留备后用。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import java.math.BigDecimal;

/**
* @author Gao Youbo
* @since 2014-08-28 13:55:12
*/
public class NumberUtils {

/**
* 四舍五入取整数
*
* @param n
* @return
*/
public static int roundHalfUp(float n) {
return new BigDecimal(n).setScale(0, BigDecimal.ROUND_HALF_UP).intValue();
}


/**
* 四舍五入
*
* @param n 数字
* @param precision 精度(保留几位小数)
* @return
*/
public static float roundHalfUp(float n, int precision) {
return new BigDecimal(n).setScale(precision, BigDecimal.ROUND_HALF_UP).floatValue();
}

/**
* 4.11 -> 4.2
* <p/>
* 4.19 -> 4.2
*
* @param n 数字
* @param precision 精度(保留几位小数)
* @return
*/
public static float roundUp(float n, int precision) {
return new BigDecimal(n).setScale(precision, BigDecimal.ROUND_UP).floatValue();
}

}