关于double的比较
double a = 1.0;
double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1;
System.out.println(a==b);
结果答案输出来是false,因为浮点数的运算是不精确的,通过打印b的值可以发现b等于0.9999999999999999。而浮点数的比较通常用Math.abs(a-b)<(1e-6)来比较.
关于double的比较
double a = 1.0;
double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1;
System.out.println(a==b);
结果答案输出来是false,因为浮点数的运算是不精确的,通过打印b的值可以发现b等于0.9999999999999999。而浮点数的比较通常用Math.abs(a-b)<(1e-6)来比较.