二进制判断奇偶性
整数中,能被2整除的数是偶数,不能被2整除的数是奇数
boolean isOdd(int n){return n & 1==0?true:false;//偶数返回true}
解释:
偶数的第一位二进制一定是 0,奇数的第一位二进制一定是 1
原因:任意一个偶数必然可以表示为:
任意一个奇数必然可以表示为:
奇数一定可以表示为一个偶数+1
判断一个整型数的二进制1的个数
判断整型数字的二进制含有几个
1
int CountBinaryOne(int n) {int count = 0;while(n) {count ++;n = n&(n-1);}return count;}
判断 一个整型数是否是2的n次方
int BoolIsNpow(int n){if( (n&(n-1)) == 0 )return 1;elsereturn 0;}
查找最低位的 1
使用位运算 取出
的二进制表示中最低位的那个
