JAVA浮点数默认为double,为什么要用float?double的精确度高,为什么还要费力在数值后加一个f或F变成float类型?
精度越大数据存储占用的空间就越大,当出现以下情况的时候,float就比double要好,比如需要一个单精度的库,或者存储的数据量很大的时候
因为默认是精度高的double,这样在计算中很少存在精度丢失。像我们平常小计算精度不会那么高,但是像科学计算或银行金额计算精度丢失会造成很大的损失。如果float后不加f,会造成double转为float造成精度丢失,某些情况下会造成很严重的后果
一般用Bigdecimal