3*0.1 == 0.3 将会返回什么?true 还是 false?
false,因为有些浮点数不能完全精确的表示出来 例如 public class floatceshi { public static void main(String[] args) { System.out.println(3 * 0.1); System.out.println(4 * 0.1); System.out.println(3 * 0.1 == 0.3); System.out.println(13 * 0.1 == 1.3); System.out.println(9 * 0.1 == 0.9); System.out.println(3 * 0.1 / 3); } }
结果:
0.30000000000000004
0.4
false
true
true
0.10000000000000002