今天使用两个浮点数进行相加的时候出现了精度损失问题,于是寻求解决方法,查询资料得知可以用BigDecimal来解决精度问题。
代码在此
public static void main(String[] args) {
double a = 0.009;
double b = 0.001;
System.out.println("浮点数进行数据运算:");
System.out.println(" a = " + a);
System.out.println(" c = " + b);
System.out.println(" a + b = " + (a + b));
System.out.println(" a - b = " + (a - b));
System.out.println(" a * b = " + (a * b));
System.out.println(" a / b = " + (a / b));
System.out.println();
System.out.println("使用BigDecimal解决精度问题:");
BigDecimal x = new BigDecimal("0.009");
BigDecimal y = new BigDecimal("0.001");
System.out.println(" x = " + x);
System.out.println(" y = " + y);
System.out.println(" x + y = " + x.add(y));
System.out.pri