将二进制的最后一个1变为0 例如x = 6,二进制 110 x -1 = 5,二进制 101 x & (x-1) ,结果为 100,将x的最后一个1 转换成了0 运用场景:计算二进制中,1的个数 func CountBits(n int) int { res := 0 for i := n; i > 0; i &= (i - 1) { res += 1 } println(res) return res }