java数据问题的模糊之处

java数据转换中,出现精度丢失提示,想请大佬们解释一下什么是精度丢失,这个地方有点迷糊

比如说 double 和float double精度有15~16位 float只有6~7位

从这里可以看出来 double是可以比float 多9位小数的 这就很简单啦 学过数学都知道的

比如 0.12555(5位小数) 转换成只能存4位小数的 那么就需要四舍五入了 0.1256(四位小数) 这与原数据相比准确度发生了改变 就是所谓的精度丢失了

int a double b
如果 a+b java会先把 a转换成 double类型 然后在相加
a在转换成double的时候 就有可能会发生精度丢失