double 四舍五入 保留1位小数
时间: 2024-12-28 16:13:35 浏览: 50
### 对 `double` 类型数据进行四舍五入并保留一位小数
为了实现对 `double` 类型的数据进行四舍五入并保留一位小数,在 Java 中可以采用多种方法。其中一种常见且可靠的方式是利用 `BigDecimal` 来完成此操作。
通过创建一个 `BigDecimal` 实例并将目标 `double` 值传递给它,之后调用 `setScale` 方法来设置所需的精度以及指定的舍入模式。对于四舍五入到一个小数位的情况,参数应设为 `(1, RoundingMode.HALF_UP)` 或者使用旧版本中的常量 `BigDecimal.ROUND_HALF_UP`[^2]。
下面是具体的代码示例:
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
public class RoundDemo {
public static void main(String[] args) {
double num = 69.26345;
BigDecimal bd = new BigDecimal(Double.toString(num));
num = bd.setScale(1, RoundingMode.HALF_UP).doubleValue();
System.out.println("Rounded number: " + num);
}
}
```
上述程序会输出经过四舍五入后的结果,即 `69.3`。
另外,还可以考虑其他几种替代方案,比如使用字符串格式化函数 `String.format()` 或者 `DecimalFormat` 类来进行类似的处理[^3]。不过需要注意的是,这些方法可能不如直接使用 `BigDecimal` 那样精确控制舍入行为。
阅读全文
相关推荐


















