JAVA中怎么判断两个浮点数相等
答案:1 悬赏:0 手机版
解决时间 2021-04-06 17:07
- 提问者网友:酱爆肉
- 2021-04-06 02:55
JAVA中怎么判断两个浮点数相等
最佳答案
- 五星知识达人网友:时间的尘埃
- 2021-04-06 03:19
一般情况下: 浮点数的相等 ,可以使用 == 进行比较 . 但是浮点数, 毕竟涉及到精度问题, 如果要考虑精度的问题 ,那么可以使用BigDecimal 类
参考代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
publicclassTest {
publicstaticvoidmain(String[] args) {
System.out.println(0.1* 3== 0.3);// false
System.out.println(0.1* 3);// 0.30000000000000004
System.out.println(0.3d);// 0.3
BigDecimal b1 = newBigDecimal("0.1");
BigDecimal b2 = newBigDecimal("3");
BigDecimal b3 = newBigDecimal("0.3");
BigDecimal b4 = b1.multiply(b2);//乘法
if(b4.compareTo(b3)==0) {// 如果两者比较结果为0 ,那么就是相等
System.out.println("相等");
} else{
System.out.println("不等");
}
}
}
参考代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
publicclassTest {
publicstaticvoidmain(String[] args) {
System.out.println(0.1* 3== 0.3);// false
System.out.println(0.1* 3);// 0.30000000000000004
System.out.println(0.3d);// 0.3
BigDecimal b1 = newBigDecimal("0.1");
BigDecimal b2 = newBigDecimal("3");
BigDecimal b3 = newBigDecimal("0.3");
BigDecimal b4 = b1.multiply(b2);//乘法
if(b4.compareTo(b3)==0) {// 如果两者比较结果为0 ,那么就是相等
System.out.println("相等");
} else{
System.out.println("不等");
}
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯