永发信息网

float==Double 的比较

答案:2  悬赏:0  手机版
解决时间 2021-02-25 01:26
float f1=1.0f;
Double d=new Double(1);
if(d==f1){
System.out.println("true");

}else{
System.out.println("flase");

}
为什么是true 呢? 谢谢

如果等于1.2就不一样了吗? 还有1.2不在精度范围内吗? 谢谢啊
float f1 = 1.2f;
Double d = new Double(1.2);
if (d == f1) {
System.out.println("true");

} else {
System.out.println("flase");

}
那这个为什么是false呢? 而且==不是比较地址吗?怎么会为true呢? 大哥大姐门..帮帮我啊
最佳答案
1.2F和1.2的double形式的精度肯定是不同,计算机中存储十进制的小数数字,由于转化为二进制不可能完全表示,所以才出现精度的概念,数据结构一书已经讲得很清楚,说一下java中的==对于基本类型,包括基本类型的包装类都是比较它们的大小。
全部回答
d.equals(f) equals是比较两个对象的内容是否相同,f没有被赋任何值,此处会出现异常。 g.equals(4.2) 数字4.2默认是double的,而g是float,两个隶属不同classes 的对象绝不会相等,所以是false。如果g.equals((float)4.2))或者d.equals(4.2)就都是true。 补充: 如果float f = 4.2f,f是float,而d是double,两个隶属不同classes 的对象绝不会相等,所以是d.equals(f)也是false
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
问道现在怎么刷战神的
应城村村民委员会地址在哪,我要去那里办事
番禺沙湾文化中心到番禺区桥南街南华街25号坐
卡诺carno仓鼠洗澡浴沙怎么样
南滨河中路/S309(路口)我想知道这个在什么地
广州白云区哪里有烟丝卖?
( )是指与人们通常考虑问题的方向相反的思考
兰家巷在哪里啊,我有事要去这个地方
单选题下列说法正确的是A.万有引力定律是卡文
单选题8个相同的水瓶中灌入不同高度的水,对
单机版大富翁第几代最经典最好玩?
平价干鲜果品店这个地址在什么地方,我要处理
在新人起步阶段如何快速找到自己的保险客户?
电信号码能改归属地吗
斑竹山地址有知道的么?有点事想过去
推荐资讯
请问污水处理工程的竣工验收资料,应该准备哪
在《茶》中和的意思
学而时习之 时 什么词活用做什么词
红辣椒在哪里啊,我有事要去这个地方
上新寨地址有知道的么?有点事想过去
三岁孩子打喷嚏流清鼻涕不发烧是风寒感冒还是
花都大酒店地址有知道的么?有点事想过去
清汤刀叉牛肉的原料有哪些佐料怎样配
宏益家纺地址在哪,我要去那里办事
冯记扣碗我想知道这个在什么地方
学飞行器动力学与控制专业不好找工作?
这应该是7条线段还是8条
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?