问题是这样的,当我用一个int类型的值去整除100的时候,结果用double类型接收,直接变成0.0了😣
int a=97;
double b=a/100;
System.out.println("result:"+b);
输出结果如下:
正确写法:
//1
double b=a/100.0
//2.
double b=(double) a/100
//3.
double b=new BigDecimal(a).divide(new BigDecimal(100)..doubleValue();
总之如果要用double类型接收的话,必须的强转,或者被除数自身转为double类型,不然会产生精度丢失。