BigDecimal 四舍五入保留4位小数
时间: 2024-09-27 19:17:43 浏览: 38
在Java中,如果你想要使用`BigDecimal`进行四舍五入并保留四位小数,可以利用`setScale`方法配合`RoundingMode`中的`RoundingMode.HALF_UP`(向上取整)。这个模式会在小数部分的中间位置遇到5时向更靠大的方向进位。以下是一个示例:
```java
import java.math.BigDecimal;
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
BigDecimal bd = new BigDecimal("12345.67891234");
// 四舍五入到四位小数
BigDecimal roundedBd = bd.setScale(4, RoundingMode.HALF_UP);
// 输出结果
System.out.println("Original value: " + bd);
System.out.println(" Rounded to 4 decimal places: " + roundedBd);
// 或者使用DecimalFormat进行格式化
DecimalFormat df = new DecimalFormat("#.####");
String formattedValue = df.format(roundedBd);
System.out.println("Formatted with 4 decimals: " + formattedValue);
}
}
```
上述代码会输出:`12345.6789`,这就是四舍五入后的结果。
阅读全文