当我在程序中乘以两个'double'变量时,我遇到了问题,我得到的结果为零.为什么?
例如:
1.0E-321 * 5.321777473676208E-4 = 0.0
如何防止结果不为零?
double
具有最小值.如果您尝试存储小于该数字的数字,则会出现下溢.
你可以使用这BigDecimal
门课.
BigDecimal a = new BigDecimal("1.0E-321"); BigDecimal b = new BigDecimal("5.321777473676208E-4"); System.out.println(a.multiply(b));