BigDecimal210除以100 等于三,向上取整
时间: 2024-09-24 11:07:10 浏览: 38
bigdecimal转integer.docx
当你使用BigDecimal库在Java中做浮点数计算时,特别是涉及到精度较高的大数值运算,如210除以100,结果可能会是一个精确的小数而不是整数。在这个例子中,虽然210 / 100 的确约等于 2.1,但是由于 BigDecimal 提供了高精度,它会返回一个数值,表示准确的分数 2.1000000000000002。
如果你想得到的结果是整数并且向上取整到最近的整数3,你可以使用 `BigDecimal#setScale(int scale, RoundingMode mode)` 方法,其中 `scale` 参数指定小数位数,`RoundingMode` 则指定了四舍五入规则。例如:
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
public static void main(String[] args) {
BigDecimal twentyTen = new BigDecimal("210");
BigDecimal hundred = new BigDecimal("100");
// 计算商并向上取整
BigDecimal result = twentyTen.divide(hundred, 0, RoundingMode.CEILING);
System.out.println(result); // 输出:3.0
}
}
```
阅读全文