两个整数相除,得到的结果为无线循环小数,用bigdecimal来接,四舍五入到2位
时间: 2023-06-06 17:07:52 浏览: 54
抱歉,我可以回答这个问题。可以使用BigDecimal的setScale方法把无限循环小数四舍五入到两位。例如:
```
BigDecimal result = new BigDecimal(dividend).divide(new BigDecimal(divisor), 2, RoundingMode.HALF_UP);
```
其中dividend和divisor是要相除的两个整数。函数的第二个参数2表示保留两位小数,第三个参数RoundingMode.HALF_UP表示四舍五入。
相关问题
java bigdecimal相除四舍五入保留两位小数
在Java中,可以使用BigDecimal类进行精确的小数运算,并且可以指定四舍五入的方式来保留指定位数的小数。下面是一个示例代码,演示了如何使用BigDecimal进行相除并四舍五入保留两位小数:
```java
import java.math.BigDecimal;
public class Main {
public static void main(String[] args) {
double num1 = 10.5;
double num2 = 3.2;
BigDecimal dividend = new BigDecimal(num1);
BigDecimal divisor = new BigDecimal(num2);
BigDecimal result = dividend.divide(divisor, 2, BigDecimal.ROUND_HALF_UP);
System.out.println(result); // 输出:3.28
}
}
```
在上面的代码中,我们首先创建了两个BigDecimal对象,分别表示被除数和除数。然后使用`divide()`方法进行相除运算,并通过第二个参数指定保留的小数位数为2。最后,使用`ROUND_HALF_UP`参数来指定四舍五入的方式。最终的结果会被赋值给`result`变量,并输出结果。
java bigdecimal相除保留两位小数四舍五入
在Java中,可以使用BigDecimal类进行高精度的数值计算。如果要对两个BigDecimal对象进行相除,并保留两位小数并进行四舍五入,可以按照以下步骤进行操作:
1. 创建两个BigDecimal对象,分别表示被除数和除数。
2. 使用divide方法将被除数除以除数,并设置精确的小数位数和舍入模式。
3. 使用setScale方法设置保留的小数位数为两位。
4. 使用ROUND_HALF_UP舍入模式进行四舍五入。
下面是示例代码:
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
public static void main(String[] args) {
BigDecimal dividend = new BigDecimal("10");
BigDecimal divisor = new BigDecimal("3");
BigDecimal result = dividend.divide(divisor, 2, RoundingMode.HALF_UP);
System.out.println(result);
}
}
```
输出结果为:3.33