e2rabi:
Tengo una expresión que estoy confundido con los resultados Cómo se calcula
int a = 7;
boolean res = a++ == 7 || a++ == 9;
System.out.println("a = " + a);
System.out.println("res = " + res);
Esto me da como resultados:
a = 8
res = true
No entendía por qué un obtener el valor 8 espero que a = 9 como un resultado Puede alguien explicar cómo se calcula?
Pochmurnik:
La evaluación perezosa se utiliza aquí. En alternativa solo operando (argumento) necesidad de ser fiel a realizar consecuencia verdadera alternativa. Argumento izquierdo es cierto en este caso (porque utiliza postincrementation, a
se incrementará después de la hora), lo que no hay necesidad de comprobar lado izquierdo de alternativa.
Significa segundos de incremento no será ejecutada.