簡體   English   中英

Java中double 0.0是否大於或小於0

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM