title: Java "new String[-1]" passes compilation. How come?
body: <p>While fiddling around in Java, I initialized a new String array with a negative length.
  i.e. - </p>
  
  <pre><code>String[] arr = new String[-1];
  </code></pre>
  
  <p>To my surprise, the compiler didn't complain about it.
  Googling didn't bring up any relevant answers. Can anyone shed some light on this matter?</p>
  
  <p>Many thanks!</p>