BigDecimal类型保留2位小数
时间: 2024-09-15 18:06:43 浏览: 51
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
}
}
```
相关问题
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进行乘法并保留2位小数的示例代码如下:
```java
import java.math.BigDecimal;
public class BigDecimalExample {
public static void main(String[] args) {
BigDecimal num1 = new BigDecimal("10.5");
BigDecimal num2 = new BigDecimal("3.2");
BigDecimal result = num1.multiply(num2).setScale(2, BigDecimal.ROUND_HALF_UP);
System.out.println(result); // 输出结果为 33.60
}
}
```
在上面的代码中,我们首先创建了两个BigDecimal类型的数值num1和num2,然后使用multiply()方法对它们进行乘法运算,最后使用setScale()方法保留2位小数并进行四舍五入。最终结果存储在result变量中,并输出到控制台。
阅读全文