loat和double类型是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确,这时候BigDecimal就派上大用场啦。
public class Demo23 {
public static void main(String[] args) {
System.out.println(0.2 + 0.1);
}
}
3.1 BigDecimal构造方法
public BigDecimal(String val) 将String表示形式转换成BigDecimal
3.2 BigDecimal加减乘除运算
public BigDecimal add(BigDecimal value); 加法
public BigDecimal subtract(BigDecimal value); 减法
public BigDecimal multiply(BigDecimal value); 乘法
public BigDecimal divide(BigDecimal value); 除法
代码
public static void main(String[] args) {
BigDecimal a = new BigDecimal(“4.5”);
BigDecimal b = new BigDecimal(“1.5”);
System.out.println("a + b =" + a.add(b));
System.out.println("a - b =" + a.subtract(b));
System.out.println("a * b =" + a.multiply(b));
System.out.println("a / b =" + a.divide(b));
}