BigDecimal类型保存两位小数
时间: 2023-07-04 21:26:52 浏览: 102
可以使用BigDecimal的setScale方法来设置精度,保留两位小数可以像这样操作:
```
BigDecimal bd = new BigDecimal("10.123456");
bd = bd.setScale(2, RoundingMode.HALF_UP);
System.out.println(bd); // 输出10.12
```
其中,第一个参数2表示要保留的小数位数,第二个参数RoundingMode.HALF_UP表示四舍五入。注意,在setScale方法执行后,原来的BigDecimal对象会被修改,因此需要将其赋值给一个新的BigDecimal对象。
相关问题
bigdecimal类型保留俩位小数
要保留BigDecimal类型的数值的两位小数,可以使用setScale方法。setScale方法接受两个参数,第一个参数是要保留的小数位数,第二个参数是舍入模式。舍入模式可以使用BigDecimal类中的常量字段,例如BigDecimal.ROUND_HALF_UP表示四舍五入。以下是一个示例代码:
```java
BigDecimal decimal = new BigDecimal("1.12345");
BigDecimal setScale = decimal.setScale(2, BigDecimal.ROUND_HALF_UP);
System.out.println(setScale);
```
在这个示例中,我们将1.12345保留为两位小数,并使用四舍五入的方式。输出结果将是1.12。
BigDecimal类型保留2位小数
BigDecimal 类型用于精确的浮点数运算,在 Java 中,如果你想将一个 BigDecimal 对象保留两位小数,你可以使用 `setScale` 或 `round` 方法。
```java
import java.math.BigDecimal;
public class Main {
public static void main(String[] args) {
BigDecimal bd = new BigDecimal("123456789.123456");
// 使用 setScale 设置小数位数并四舍五入
BigDecimal roundedBd = bd.setScale(2, BigDecimal.ROUND_HALF_UP);
// 输出结果
System.out.println(roundedBd); // 输出:123456789.12
// 或者直接截断到指定小数位
bd = bd.stripTrailingZeros();
roundedBd = bd.setScale(2);
System.out.println(roundedBd); // 输出:123456789.12
}
}
```
阅读全文