java如何四舍五入
时间: 2024-09-10 12:30:37 浏览: 30
在Java中,可以通过使用`Math.round()`方法或者`BigDecimal`类来实现四舍五入。
1. 使用`Math.round()`方法:
`Math.round()`方法接受一个`long`类型的参数或者一个`double`类型的参数,并返回最接近的`long`或`int`值。对于`double`类型的参数,它实际上是按照最接近的整数来四舍五入的,对于`long`类型的参数,它实际上是按照最接近的`long`值来四舍五入的。
例如:
```java
double num = 3.6;
long rounded = Math.round(num); // 返回 4
double num2 = 3.4;
long rounded2 = Math.round(num2); // 返回 3
```
2. 使用`BigDecimal`类:
`BigDecimal`类提供了更精确的控制,可以通过设置`RoundingMode`来指定四舍五入的行为。`RoundingMode`提供了多种模式,如`RoundingMode.HALF_UP`(默认,四舍五入)、`RoundingMode.CEILING`(向正无穷方向舍入)、`RoundingMode.FLOOR`(向负无穷方向舍入)等。
例如:
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
double num = 3.65;
BigDecimal bd = new BigDecimal(num);
BigDecimal rounded = bd.setScale(1, RoundingMode.HALF_UP); // 设置精度为1位小数,四舍五入
System.out.println(rounded); // 输出 3.7
```