第一点:在计算机中默认浮点数是double型,所以float定义时必须加个f或F。(有些东西默认就是默认,我们没办法深究,例如在计算byte取值范围时1000 0000就代表-128,别问我为什么,你去问规定的人去)
第二点:在精确运算时最好别用double float。因为会有舍入误差。
double a=3.0;
double b=2.9;
float c=3.0f;
float d=2.9f;
System.out.println(a-b);
System.out.println(c-d);
//舍入误差太明显了。
处理高精度的时候可以用BigDecimal类,然而我测试的时候发现还是会丢失精度,查了查说我们需要传String类型,发现处理精度可以了