title: Java bitwise operator <<
body: <p>Can someone explain why the following bitwise expressions return different results:</p>
  
  <pre><code>System.out.println((-1&lt;&lt;31)&lt;&lt;1);   // it prints 0
  System.out.println(-1&lt;&lt;32);        // it prints -1
  </code></pre>