java丢失精度问题
一、java丢失精度问题
并不是会丢失精度,而是3.14默认是double类型,不能自动转型为float

二、java丢失精度问题
float a = 3.14;这个语句的意思是把双精度浮点类型(double)赋值给单精度浮点类型(float)的变量a,把一个高精度的数赋值给一个低精度的数,就会照成精度丢失了。因为Java中,3.14这样的写法默认是认为double类型的,而3.14f这样的写法就会指定3.14这个数为float类型,这样赋值就不会有精度丢失了。注意,这里你不要单纯的把float想像成只能存一位小数点的数,3.14这个数同样用float可以存下
三、java丢失精度问题
精度问题