社区
Java SE
帖子详情
java如何判断两个浮点数(float类型)是否相等
arielxp
2010-03-09 08:24:00
java如何判断两个浮点数(float类型)是否相等?/
...全文
10753
15
打赏
收藏
java如何判断两个浮点数(float类型)是否相等
java如何判断两个浮点数(float类型)是否相等?/
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
anyin89
2011-01-07
打赏
举报
回复
public static boolean equals(float a ,float b){
if( a<b+0.000001f && a>b-0.000001f)
return true ;
return false ;
}
darxin
2010-03-10
打赏
举报
回复
对于float型的比较,先使用Float.floatToIntBits转换成int类型的值,然后使用==操作符比较int类型的值;
对于double型的比较,先使用Double.doubleToLongBits转换成long类型的值,然后使用==操作符比较long类型的值。
float f1 = 0.9999999f;
float f2 = 1f;
boolean value = (Float.floatToIntBits(f1) == Float.floatToIntBits(f2));
System.out.println(value);
猫儿爷爷
2010-03-09
打赏
举报
回复
==
musiclee
2010-03-09
打赏
举报
回复
float1/float2>1 =1 <1
junmasky
2010-03-09
打赏
举报
回复
基本数据类型用 ==进行判断
yxq08nt
2010-03-09
打赏
举报
回复
精度~
内容太短了~
star598388532
2010-03-09
打赏
举报
回复
春哥说:回帖是一种美德~
soulx
2010-03-09
打赏
举报
回复
涉及到浮点型数据运算的时候,最好用BigDecimal处理,避免出现不必要的麻烦。
woshayawo
2010-03-09
打赏
举报
回复
可以比较两个float值的差,当他们的差的绝对值小于一个极小的数值时,比如说10的-6次方,则认为二者相等!
xllee
2010-03-09
打赏
举报
回复
不能判断,底层是基于2进制的.不同机器解析后的数字不可能(大多数)相同.
progrose
2010-03-09
打赏
举报
回复
浮点数为基本数据类型,直接使用==即可
wzumath
2010-03-09
打赏
举报
回复
具体要看什么样的浮点数比较
0.9999999f==1f //true
0.9f==1f //false
这个和浮点数在计算机中的存储有关,浮点数最高精度为8bit
amt867
2010-03-09
打赏
举报
回复
用“==”就可以了,不用其他的了
jessewizard
2010-03-09
打赏
举报
回复
同楼上。。。。。。。。。。。
wzju64676266
2010-03-09
打赏
举报
回复
用==不就可以了吗?
JAVA
中
浮点数
的运算
NULL 博文链接:https://spiritfrog.iteye.com/blog/602147
Java
浮点数
.pdf
Java
浮点数
.pdf
Java
实现的浮点类的精确计算
这个类可以当做一个工具类来用,有了这个工具类,以后的
浮点数
的计算误差就不再是问题了。
float
相关知识
float
相关,代码,说明。例子
Java
语言程序设计实用教程
类型
与运算符PPT教案学习.pptx
Java
语言程序设计实用教程
类型
与运算符PPT教案学习.pptx
Java SE
62,630
社区成员
307,264
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章