經典Java面試題,判斷整數奇偶。90%的程序員都答錯了!

小編羅列了最常見的四種答案,並按對程序的熟練度作了排序。看看你屬於哪個等級的程序員吧。

準程序員


public boolean isOdd(int a){

if(a%2 == 1){

return true;

}

return false;

}

分析:90%剛接觸Java的朋友會給出以上答案,先不論對錯,首先這個方法比較繁瑣。

初級程序員


public boolean isOdd(int i) {

return i % 2 == 1;

}

分析:相對於上面的解法,這個方法相對簡潔,但是其實也是錯誤答案。因為沒有考慮負數的情況。

中級程序員


public boolean isOddr(int i) {

return i % 2 != 0;

}

分析:此方法雖然解決了以上沒有考慮負數的情況,但是效率不高。

高級程序員


public boolean isOddr(int i) {

return (i & 1) == 1;

}

分析:這是與運算,效率相對高了不少。

寫在最後

這是一道非常簡單的面試題,但是能給出最後一種解答需要紮實的基本功。剛踏入程序世界大門的新手往往認為程序能順利運行,不出bug就萬事大吉了,但是這種淺嘗即止,得過且過的思想為日後漫天bug的程序員生涯埋下伏筆。對於新手,寫完程序後採用不同的方式多運行幾次,再仔細想想有沒有更好的方法,經過時間的積累相信你一定能有所進步。


分享到:


相關文章: