BigDecimal 四舍五入
时间: 2023-07-18 17:37:40 浏览: 89
在 Java 中,可以使用 BigDecimal 类的 setScale() 方法和 RoundingMode 枚举类型的常量来实现数值的四舍五入。
例如,以下代码将一个 BigDecimal 对象 num 进行四舍五入,并保留两位小数:
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
public static void main(String[] args) {
BigDecimal num = new BigDecimal("1234.56789");
BigDecimal result = num.setScale(2, RoundingMode.HALF_UP);
System.out.println(result);
}
}
```
在上面的代码中,setScale(2, RoundingMode.HALF_UP) 指定了要保留两位小数,并使用 HALF_UP 模式进行四舍五入。输出结果为:1234.57。
除了 HALF_UP 模式,BigDecimal 还提供了其他的 RoundingMode 常量,可以根据具体的需求选择合适的模式。例如:
- RoundingMode.UP:向远离零的方向舍入。
- RoundingMode.DOWN:向接近零的方向舍入。
- RoundingMode.CEILING:向正无穷方向舍入。
- RoundingMode.FLOOR:向负无穷方向舍入。
- RoundingMode.HALF_DOWN:向最接近的整数舍入,如果距离两个整数相等,则向下舍入。
- RoundingMode.HALF_EVEN:向最接近的整数舍入,如果距离两个整数相等,则向相邻的偶数舍入。
更多关于 BigDecimal 类的使用方式,可以参考 Java 官方文档。
阅读全文