世界上有10種人,一種懂二進位制,一種不懂。那麼你知道兩個int32整數m和n的二進位制表達,有多少個位(bit)不同麼?

NO IMAGE

世界上有10種人,一種懂二進位制,一種不懂。那麼你知道兩個int32整數m和n的二進位制表達,有多少個位(bit)不同麼?

輸入例子:

1999 2299

輸出例子:

7

public class Solution {
/**
* 獲得兩個整形二進位制表達位數不同的數量
* 
* @param m 整數m
* @param n 整數n
* @return 整型
*/
public int countBitDiff(int m, int n) {
int dif = m^n;
int count = 0;
for(int i=0;i<32;i  ){
if(((dif>>i)&1)!=0)
count  ;
}
return count;
}
}