[英]Is double 0.0 is greater or less than 0 in java
我想请更多澄清。 这是我的示例程序
double diff = 7.500 - 7.500;
System.out.println(diff); // result 0.0
if (diff > 0) {
System.out.println("+" + diff ); //result +0.0
} else {
System.out.println("-" + diff ); //result -0.0
}
我的结果是-0.0 。 我的期望是0 == 0.0,然后跳过其他情况。 但是它进入了else条件.double 0.0是大于还是小于0?
请注意,您正在检查diff> 0-如果它为零,则在打印-0.0
在您的情况下,使用(更大) >
将0.0与0进行比较,因此0.0并非严格大于0(等于)。 然后,您的程序转到else
部分。
if(diff == 0 ) {
System.out.println("+" + diff ); //result 0.0
} else if (diff > 0) {
System.out.println("+" + diff ); //result +diff
} else { // diff is less than 0
System.out.println("-" + diff ); //result -diff
}
这是我的答案:
double diff = 7.500 - 7.500;
System.out.println(diff);
if(diff>0){
System.out.println("+"+diff);
}else if(diff<0){
System.out.println("-"+diff);
}else if(diff==0){
System.out.println("="+diff);
}
}
我的结果是这样的:
0.0
= 0.0
您必须忘记0.0等于0是'else the 0.0> 0'以外的'0.0> = 0'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.