Diferent integer values
<blockquote>
  <p><strong>Possible Duplicate:</strong><br>
  <a href="http://stackoverflow.com/questions/8427416/why-is-true-for-some-integer-objects">Why is == true for some Integer objects?</a>  </p>
</blockquote>



<p>I have code fragment</p>

<pre><code>Integer i1 = new Integer(a);
Integer i2 = new Integer(b);
if (i1 == i2)
{
// ...
}
</code></pre>

<p>When 'a' and 'b' are small numbers (e.g. 0-20) then i1 == i2 return true.<br>
 But when 'a' and 'b' are great then i1 == i2 rerun false!<br>
I don't understand, how can it be</p>
