Float 比较

原创 2016年05月30日 11:52:18

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

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(表示小于) 


两个float值比较大小

如果程序中要求比较两个float值是否相等,你会怎样写呢? float a; float b; if(a == b) { ... ...
  • liyun123gx
  • liyun123gx
  • 2014年02月12日 17:48
  • 2912

计算机中基本类型float值表示和大小比较问题

通常计算机编程语言中都建议不要比较基本类型float的大小,特别是不要用等号来比较。(BigDecimal等对象类型例外,因为它已经不是采用IEEE 754标准表示法) 举例说明:  ...
  • pizi0475
  • pizi0475
  • 2015年01月15日 10:55
  • 1555

两个float 怎么比较大小

float 类型不能比较相等或不等,但可以比较>,=, 用==从语法上说没错,但是本来应该相等的两个浮点数由于计算机内部表示的原因可能略有微小的误差,这时用==就会认为它们不等。应该使用两个浮点数之...
  • mydriverc2
  • mydriverc2
  • 2015年11月17日 16:13
  • 1720

float 类型精度和两数比较大小

Windows VS2008 下,float型精度是7位小数. 在精度范围内,可以直接用 , == 逻辑判断两个float类型数据的大小. 在精度范围之外,多余数位将被忽略,从而分不同情况 : 以下是...
  • Howard_Liu1314
  • Howard_Liu1314
  • 2013年03月14日 20:34
  • 1507

java float比较相等

public class Test{     public static void main(String[] args){         isEqualOfFloat(10.222222225...
  • u010343544
  • u010343544
  • 2016年07月20日 09:30
  • 3947

写出float a与0比较语句 在这里不能用==或!=来比较

float a与0比较不能用==或!=来比较, /无论是float还是double类型的变量,都有精度限制。 //所以一定要避免将浮点变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“=或...
  • Liuchuang_MFC
  • Liuchuang_MFC
  • 2015年11月01日 21:32
  • 808

float 类型与“0值”比较

不可将浮点变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“ const float EP = 0.000001; if ((x >= - EP) && (x ) { B; ...
  • diaozaoxiang
  • diaozaoxiang
  • 2016年03月18日 11:31
  • 1382

俩个float数之间比较大小

需求:俩个标识金额的浮点数比较大小。 问题:相等无法成立。经过var_dump()打印,俩个浮点数数值 一样大。 解决:把标识金额的浮点数乘以100,抓换成整形,在做比较。即可使相等成立...
  • u013450576
  • u013450576
  • 2016年03月31日 15:50
  • 138

float类型和0比较大小

转自:http://blog.csdn.net/fengrx/article/details/5349332 [cpp] view plaincopy ...
  • u010013695
  • u010013695
  • 2014年04月24日 13:28
  • 1541

判断两个float变量是否相等以及和 0 值比较方法

float 型: 占 4 字节,7 位有效数字 double 型:占 8 字节,15~16 位有效数字 浮点数的表示是不精确的,float 和 double 都不能保证可以...
  • zy986718042
  • zy986718042
  • 2017年05月24日 22:03
  • 2272
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Float 比较
举报原因:
原因补充:

(最多只允许输入30个字)