title: Why does (i<=j && j<=i && i!=j) evaluate to TRUE?
body: <p>I have written a piece of Java code which is running in an infinite loop.</p>
  
  <p>Below is the code:</p>
  
  <pre><code>public class TestProgram {
      public static void main(String[] args){
          Integer i = new Integer(0);
          Integer j = new Integer(0);
  
          while(i&lt;=j &amp;&amp; j&lt;=i &amp;&amp; i!=j){
              System.out.println(i);
          }
      }
  }
  </code></pre>
  
  <p>In the code above, while seeing the condition in the <code>while</code> loop, at first it looks like that program will not go inside the <code>while</code> loop. But actually it is an infinite loop and keeps printing the value.</p>
  
  <p>What is happening here?</p>