prefix and postfix increments while comparing variables
- by miatech
could someone explain why this code output is
not equals
not equals 2
in the first if statement it seems that a = 0 b/c is a postfix increment; therefore a will not increase untile next line; however, the two a's are not equal why? and in the second if when I run the debugger the value of a is 2, but the test is false, why?
public static void main (String[] args)
   {
       int a = 0;
       if (a++ == a++) {
           System.out.println("equals");
       } else {
           System.out.println("not equals");
       }
       if (++a == 2) {
           System.out.println("equals 2");
       } else {
           System.out.println("not equals 2");
       }
   }