¿Cuál es la salida del siguiente programa Java?
Class Test { public static void main (String [] args) { int x = 0; int y = 0; for (int z = 0; z < 5; z++) { if((++x > 2) || (++y > 2)) { x++; } } System.out.println( x + " " + y); } }
(A) 8 2
(B) 8 5
(C) 8 3
(D) 5 3
Respuesta: (A)
Explicación: Al aplicar la técnica de cortocircuito,
z = 0: x = 1, y = 1, if condition false z = 1: x = 2, y = 2, if condition false z = 2: x = 3, if condition true and due to short circuiting ++y is not evaluated, x++ // x = 4 z = 3: x = 5, again if condition is true, x++ // x = 6 z = 4: x = 7, condition true, x++ // x = 8
Entonces, la opción (A) es correcta.
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA