Float 比较

来源:互联网 发布:马蓉的淘宝店铺 编辑:程序博客网 时间:2024/05/29 12:15

浮点数的表示是不精确的,不能直接比较两个数是否完全相等,不可将浮点变量用“==”或“!=”与任何数字比较。

Float a = 16.5f;

Float b = 16.5f;
String c = "1";

String d = "1";


System.out.println("a == b:" + (a == b));
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(表示小于) 


0 0