System.out.println("操作数 a = 4.4444444,b = 2.002"); //加法操作 double add = (new BigDecimal(4.4444444).add(new BigDecimal(2.002))).doubleValue(); System.out.println("加法操作(保留5位小数):"+String.format("%.5f",add)); //减法操作 BigDecimal d1= new BigDecimal(Double.toString(4.4444444)); BigDecimal d2 = new BigDecimal(Double.toString(2.002)); double absPercent = d1.subtract(d2).doubleValue(); //减法 System.out.println("减法操作(保留4位小数):"+String.format("%.4f",absPercent));//减法 double mu = (new BigDecimal(4.4444444).multiply(new BigDecimal(2.002))).doubleValue(); System.out.println("乘法操作(保留4位小数):"+String.format("%.4f",mu)); double div = (new BigDecimal(4.4444444).divide(new BigDecimal(2.002),4)).doubleValue(); System.out.println("除法操作(保留4位小数):"+String.format("%.4f",div));
切记: 在做减法运算时需要将double转换成string 否则会产生计算错误,在计算除法时需要指定保留被除数的个数,否则会报错(意思是除不尽)