BigDecimal 讲解:
直接上代码:
package com.oop.String;
public class BigDecimal {
public static void main(String[] args) {
double a = 1;
double b = 0.9;
System.out.println(a - b); // double存储的是近似值 ,运算时会存在误差
double c = 1.4;
double d = 0.5;
System.out.println((c - d) / 0.9);
System.out.println("---------------------------------------");
// BigDecimal位于java.math包中,精确计算浮点数
java.math.BigDecimal bigDecimal = new java.math.BigDecimal("1.0");
java.math.BigDecimal bigDecimal2 = new java.math.BigDecimal("0.9");
java.math.BigDecimal bigDecimal3 = bigDecimal.subtract(bigDecimal2); // 减法
System.out.println(bigDecimal3);
java.math.BigDecimal bigDecimal4 = bigDecimal.add(bigDecimal2); // 加法
System.out.println(bigDecimal4);
java.math.BigDecimal bigDecimal5 = bigDecimal.multiply(bigDecimal2); // 乘法
System.out.println(bigDecimal5);
// 除法
java.math.BigDecimal bigDecimal6 = new java.math.BigDecimal("1.4")
.subtract(new java.math.BigDecimal("0.5"))
.divide(new java.math.BigDecimal("0.9"));
System.out.println(bigDecimal6);
java.math.BigDecimal bigDecimal7 = new java.math.BigDecimal("20").divide(new java.math.BigDecimal("3")
, 2, java.math.BigDecimal.ROUND_HALF_UP); // 除不尽时,设置 保留两位小数,四舍五入
System.out.println(bigDecimal7);
}
}
执行结果:
——————————————————
——————————
———