El Misterio del Short-Circuit con Side Effects
Dificultad: Difícil Java advanced logic
int x = 0;
boolean result = (x++ > 0) && (++x > 1);
System.out.println(x); 📥 Inputs:
❓ ¿Cuál es el output?
Ingresa tu respuesta abajo
💡 Explicación
¡FALSO! Java usa evaluación de cortocircuito (short-circuit). Si el primer operando de && es false, el segundo NUNCA se evalúa. En el código, x++ > 0 es false (0 no es mayor que 0, luego x vale 1), entonces ++x > 1 jamás se ejecuta. El resultado: x = 1, no 2. Este comportamiento evita evaluaciones innecesarias y es crucial cuando el segundo operando tiene efectos secundarios o podría lanzar excepciones.
¿Verdadero o Falso? 🤔