在处理需要高精度计算的数值的时候,使用Big Decimal会比double更可靠和精确。
示例代码:
import java.math.BigDecimal;
public class Main { public static void main(String[] args) { double a = 10.0; double b = 3.0; double c = a / b; System.out.println("使用Double计算结果:" + c);
BigDecimal d1 = new BigDecimal("10.0");
BigDecimal d2 = new BigDecimal("3.0");
BigDecimal d3 = d1.divide(d2, 4, BigDecimal.ROUND_HALF_UP);
System.out.println("使用BigDecimal计算结果:" + d3);
}
}
输出结果:
使用Double计算结果:3.3333333333333335 使用BigDecimal计算结果:3.3333
可以看到,对于需要高精度计算的情况,使用BigDecimal可以得到更加精确的结果。