JAVA四舍五入的代码
时间: 2024-09-14 17:10:08 浏览: 55
在Java中,进行四舍五入操作可以使用`java.lang.Math`类中的`round`方法。这个方法接受一个`double`类型的参数,并返回最接近的`long`类型值。对于小数部分正好等于0.5的情况,该方法会将其向上舍入。
不过需要注意的是,`round`方法返回的是`long`类型,如果需要保持原有的小数位数,可以先将`double`值乘以10的n次方(n为希望保留的小数位数),进行四舍五入后再除以相同的数值。
下面是使用`Math.round`方法进行四舍五入的示例代码:
```java
public class RoundExample {
public static void main(String[] args) {
double value = 2.5;
long roundedValue = Math.round(value);
System.out.println("四舍五入后的整数:" + roundedValue);
double decimalValue = 2.55;
double roundedDecimal = Math.round(decimalValue * 10) / 10.0; // 四舍五入到一位小数
System.out.println("四舍五入到一位小数:" + roundedDecimal);
}
}
```
如果要对`float`类型的数值进行四舍五入,可以使用`BigDecimal`类,它提供了更精确的四舍五入控制。
以下是使用`BigDecimal`进行四舍五入的示例代码:
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
public class RoundBigDecimalExample {
public static void main(String[] args) {
BigDecimal value = new BigDecimal("2.5");
value = value.setScale(0, RoundingMode.HALF_UP); // 四舍五入到整数
System.out.println("四舍五入到整数:" + value);
BigDecimal decimalValue = new BigDecimal("2.55");
decimalValue = decimalValue.setScale(1, RoundingMode.HALF_UP); // 四舍五入到一位小数
System.out.println("四舍五入到一位小数:" + decimalValue);
}
}
```
在`BigDecimal`的`setScale`方法中,第一个参数指定了小数点后保留的位数,第二个参数是一个`RoundingMode`枚举值,指定了舍入模式,例如`RoundingMode.HALF_UP`即普通的四舍五入。
阅读全文