java四舍五入保留2位小数
时间: 2025-05-15 20:02:49 浏览: 27
在Java中,你可以通过多种方式将数值四舍五入并保留两位小数。以下是几种常见的做法:
### 使用 `DecimalFormat` 类
`DecimalFormat` 提供了对数字进行格式化的功能,并支持四舍五入。
```java
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
double num = 123.45678;
DecimalFormat df = new DecimalFormat("#.00");
System.out.println(df.format(num)); // 输出: 123.46
}
}
```
这里,“#.00”表示我们希望结果有两位小数,不足的部分会补零;而多余的小数部分则按照“四舍五入”的规则处理。
### 使用 `BigDecimal`
如果你需要更精确的控制(比如避免浮点运算误差),可以考虑使用 `BigDecimal` 来完成这一任务。
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
public static void main(String[] args) {
double num = 123.45678;
BigDecimal bd = new BigDecimal(Double.toString(num));
bd = bd.setScale(2, RoundingMode.HALF_UP);
System.out.println(bd.doubleValue()); // 输出: 123.46
}
}
```
在这个例子中,`setScale(int scale, RoundingMode mode)` 方法用于指定保留几位小数以及如何进行舍入操作,其中 `HALF_UP` 模式对应的就是传统的“四舍五入”。
这两种方法各有优缺点,在简单场景下推荐使用 `DecimalFormat`, 而对于高精度计算建议选择 `BigDecimal`.
阅读全文
相关推荐

















