有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Is double 0.0在java中大于或小于0

我想要求更多的澄清。这是我的示例程序

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


共 (1) 个答案

  1. # 1 楼答案

    在您的例子中,使用(更大)>将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
    }