private static boolean isPowerOfTwo(int number) {
if(number <=0){
throw new IllegalArgumentException(number + " is too small.");
}
if ((number & -number) == number) {
return true;
}
return false;
}
但不明白的if語句之一。 if ((number & -number) == number)
這裏是什麼意思?
中查找'&'運營商。 –
可能的重複[查找如果一個數是兩個冪沒有數學函數或日誌功能](http://stackoverflow.com/questions/19383248/find-if-a-number-is-a-power-of-兩無,數學函數或對數函數) – Cole9350