title: BitCount Method
body: <p>Can anyone Explain this bitcount method.</p>
  
  <pre><code>public static int bitCount(int i) {
          // Hacker's Delight, Figure 5-2
          i -= (i &gt;&gt; 1) &amp; 0x55555555;
          i = (i &amp; 0x33333333) + ((i &gt;&gt; 2) &amp; 0x33333333);
          i = ((i &gt;&gt; 4) + i) &amp; 0x0F0F0F0F;
          i += i &gt;&gt; 8;
          i += i &gt;&gt; 16;
          return i &amp; 0x0000003F;
      }
  </code></pre>