使用强制转化
double d=0.0;
int i=(int)d;
现在我想求d-i的值,即求d的小数部分.
当d的小数部分大于等于0.5(比如1.8)时候,运行正常(输出0.8).
但是,当d的小数部分小于0.5时,比如d=1.4,转化后的值输出却是0.39999999999.
什么原因呢?
Java double 类型转化为int类型的问题
答案:2 悬赏:60
解决时间 2021-02-27 21:33
- 提问者网友:他的思颖
- 2021-02-27 13:01
最佳答案
- 二级知识专家网友:闲懒诗人
- 2021-02-27 14:12
public static double getPoint(double a){
return Double.parseDouble("0."+((a+"").split("\\."))[1]);
}
return Double.parseDouble("0."+((a+"").split("\\."))[1]);
}
全部回答
- 1楼网友:深街酒徒
- 2021-02-27 15:07
if语句
()里面应该是一个boolean类型的参数即:true 或者 false
而你的
e.node = 0 这仅仅是一个赋值
你应该换成
e.node == 0 这是比较符 返回的是 true 或者 false
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯