Returns true if the given number is a power of 2, false otherwise.
Use the bitwise binary AND operator (&) to determine if n is a power of 2.
Additionally, check that n is non-zero.
代码实现
func IsPowerOf2(n int) bool {
return n > 0 && (n&(n-1)) == 0
}
使用样例
IsPowerOf2(0) // false
IsPowerOf2(1) // true
IsPowerOf2(8) // true