让我们看一下Java中的以下代码片段。
package division;
import java.math.BigDecimal;
final public class Main
{
public static void main(String[] args)
{
BigDecimal a = new BigDecimal(2);
BigDecimal b = new BigDecimal(3);
System.out.println(a.multiply(b));
System.out.println(a.add(b));
System.out.println(b.subtract(a));
System.out.println(a.divide(b));
}
}
在上面的代码片段中,除了最后一个(除法)之外的所有操作都成功执行了。在 Java 中尝试将两个BigDecimal
数字相除会抛出java.lang.ArithmeticException
. 为什么?这个问题的解决方案是什么?