title: Java Overflow issues
body: <p>I wrote the following code, which answers differently when I have printing statement and without it.</p>
  
  <pre><code>class test
  {
      public static void main(String args[])
      {
        int i = Integer.MAX_VALUE;
        int j = Integer.MAX_VALUE-100;
        int count = 0;
        for(; j&lt;=i; j++){
          count++;
          //System.out.println(j); // If we remove comment, answer is different
        }
       System.out.println(count + ", " + j + ", " + (j&lt;=i));        
      }
  }
  </code></pre>
  
  <p>The answer without print statement is : </p>
  
  <pre><code>101, -2147483648, true
  </code></pre>
  
  <p>and with print statement is :</p>
  
  <pre><code>15588, -2147468161, true
  </code></pre>
  
  <p>In both the cases, the final condition should return <code>false</code>, but it returns <code>true</code>. Can anybody explain this.</p>