java中奇偶數的判斷


在我的代碼編寫中,判斷一個數字是否奇偶。經常的方法是

public boolean isOdd(int a){
    if(a%2 == 1){   //是奇數
        return true;
    }
    return false;
}

但是這樣有一半的時候是錯誤的。因為這里並沒有考慮負數的情況。

System.out.println((-1)%2);

結果為-1。在上面的方法判斷中,負奇數和2取余的結果並不是1.所以上面的判斷方法並不科學。正確的方法應該為

public boolean isOdd(int a){
    if(a%2 != 0){   //是奇數
        return true;
    }
    return false;
}

這樣的處理能夠實現正常的判斷。但是性能不是太好。比較優化的方法

public boolean isOdd(int a){
    if((a&1) != 1){   //是奇數
        return true;
    }
    return false;
}

喜歡后面的這個方法實現。留着,以備不時之需。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM