title: Why is the max integer in java 2^31 - 1 and not 2^31
body: <p>Sorry if this is a really basic question, but why is there a minus one for the positive side? </p>
  
  <p>Does it have to do with the zero being stored or something? I thought computing the highest possible decimal number for binary would just be to add the powers of two up, like for a 3 bit unsigned it would be     </p>
  
  <pre><code>1*2^0 + 1*2^1 + 1*2^2 = 7
  </code></pre>
  
  <p>Shouldn't the same rule apply for java integers? Thanks</p>