位运算实例(一):判断奇偶性
生活随笔
收集整理的這篇文章主要介紹了
位运算实例(一):判断奇偶性
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
同樣一個問題,位運算可以提高程序的運行效率。
下面講一下關于奇偶性的判斷。
?
常規方法
public static boolean isOdd(int i){
??????? return i % 2 != 0;
}
?
位運算方法
public static boolean isOdd(int i){
??????? return (i & 1) != 0;
}
?
說明:
我們知道計算機中的數字通常用二進制補碼表示。
如果為正數,補碼與原碼相同,直接看最后一位(因為數字1的前面N位均為0,跟它做與運算,前面肯定為0),奇數為1,偶數為0,與1相與,結果不變。
如果為負數,補碼轉原碼:保持符號位不動,其它各位取反+1,即為負數的絕對值原碼全部取反+1。還是看最后1位,先取反,再+1,結果還是和原來相同。進行與運算時還是原來的末位,所以用跟1做與運算還是保持原來的結果。
總結
以上是生活随笔為你收集整理的位运算实例(一):判断奇偶性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 程序员的八个级别
- 下一篇: 最长有序子序列—动态规划算法