在Double的长度不够用的时候,使用 BigDecimal 来计算大数。
BigDecimal bd1 = new BigDecimal("2.11511111111111111111111");
BigDecimal bd2 = new BigDecimal("2");
// 直接打印:加、减、乘、除
System.out.println(bd1.add(bd2));
System.out.println(bd1.subtract(bd2));
System.out.println(bd1.multiply(bd2));
System.out.println(bd1.divide(bd2));
// 保留2位小数,四舍五入
System.out.println(bd1.add(bd2).setScale(2, RoundingMode.HALF_UP));
结果
其中,保留小数的RoundingMode包括