并不是类型不同的问题 而是有些小数无法用float或double精确表示的问题 比如0.x是一个无法用二进制精确表示的数 那么,float a = 0.x实际保存的可能是0.x.......10983,也就是说后面还有数字 double的话同是如此,但double的位数更多 所以,这样用==来比较肯定不相等 一般程序中,是很少用float,……
0.5这个比较特殊。
0.5f==0.5 结果:false 0.3f==0.3 结果:false 0.3再没指定精度时,默认是双精度(d),而f是单精度,两者是不同的类型,所以不等。
62,614
社区成员
307,327
社区内容
加载中
试试用AI创作助手写篇文章吧