title: Converting 32-bit binary string with Integer.parseInt fails
body: <p>Why does this part of code fail:</p>
  
  <pre><code>Integer.parseInt("11000000000000000000000000000000",2);
  
  Exception in thread "main" java.lang.NumberFormatException: For input string: "11000000000000000000000000000000"
  </code></pre>
  
  <p>As far as I understand Integer is a 32 bit value. The number of zeros and ones in the upper code is 32. If there are 31 the code works. Why is that so?</p>