浮点数的表示是不精确的,不能直接比较两个数是否完全相等,不可将浮点变量用“==”或“!=”与任何数字比较。
Float a = 16.5f;
Float b = 16.5f;String c = "1";
String d = "1";
System.out.println("a.equals(b):" + a.equals(b));
System.out.println("a.compareTo(b):" + a.compareTo(b));
System.out.println("c == d:" + (c == d));
System.out.println("c.equals(d):" + c.equals(d));
结果为:
a == b:false
a.equals(b):true
a.compareTo(b):0
c == d:true
c.equals(d):true
所以,比较两个Float的值 可以用comparetTo(), 返回值 0 (表示相等),1(表示大于) 和 -1(表示小于)