java将double类型转为bigdecimal类型,保留两位小数
时间: 2024-06-27 11:01:04 浏览: 117
java使double保留两位小数的多方法 java保留两位小数
在Java中,将`double`类型转换为`BigDecimal`类型并保留两位小数,可以通过`DecimalFormat`或`BigDecimal`的构造方法来实现。以下是两种常见方法:
**使用`DecimalFormat`方法**:
```java
import java.text.DecimalFormat;
double doubleValue = 3.14159;
BigDecimal bd = new BigDecimal(new DecimalFormat("0.00").format(doubleValue));
```
这里,`DecimalFormat("0.00")`创建了一个格式化对象,其中"0.00"表示最多保留两位小数。
**直接使用`BigDecimal`构造方法**:
```java
double doubleValue = 3.14159;
BigDecimal bd = new BigDecimal(doubleValue.setScale(2, RoundingMode.HALF_UP));
```
`setScale(int scale, RoundingMode roundingMode)`方法设置小数位数和舍入模式,`scale=2`表示保留两位小数,`RoundingMode.HALF_UP`表示向上取整(四舍五入)。
阅读全文