Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
4
respuestas

[Duda] DUDA CON RESPECTO AL ULTIMO EJEMPLO OPERADORES DE INCREMENTO

Buenas tardes. mi duda es la siguiente. En el ultimo ejemplo habla del "post-incremento". muestra el siguiente codigo

int num = 5; int resultado = num++; //num es atribuido primero a la variable resultado y depués es incrementado para 6 System.out.println(num); // imprime 5 System.out.println(resultado); // imprime 6

Creo que hay un pequeño error. num se asigna a resultado como 5, y luego num se incrementa a 6. Por lo tanto,

System.out.println(num); imprime 6 System.out.println(resultado); imprime 5.

4 respuestas

Hola Ricardo, espero que estés bien

Entiendo tu confusión con el ejemplo del operador de post-incremento. Vamos a aclararlo:

Cuando usas el operador de post-incremento (variable++), el valor actual de la variable se utiliza primero en la expresión y luego se incrementa. Así que, en el ejemplo que mencionaste:

int num = 5;
int resultado = num++; // Aquí, 'num' se asigna a 'resultado' como 5, y luego 'num' se incrementa a 6
System.out.println(num); // Esto imprimirá 6 porque 'num' fue incrementado después de la asignación
System.out.println(resultado); // Esto imprimirá 5 porque 'resultado' recibió el valor de 'num' antes del incremento

Por lo tanto, el ejemplo está correcto. El valor de num se incrementa después de haberse asignado a resultado, lo que significa que resultado obtiene el valor original de num antes de que se incremente.

Espero haber aclarado la confusión. ¡Espero haber ayudado y buenos estudios!

Hola Brenda, tanto tú como Ricardo están en lo correcto pero él se refiere a que lo que está escrito en el curso "Java: creando tu primera aplicación", en el módulo 2.3 "Para saber más: operadores" está incorrecto ya que contradice lo que ustedes dos están diciendo.

A la conclusión que llegaron ustedes dos es la siguiente:

int num = 5;
int resultado = num++; // Aquí, 'num' se asigna a 'resultado' como 5, y luego 'num' se incrementa a 6
System.out.println(num); // Esto imprimirá 6 porque 'num' fue incrementado después de la asignación
System.out.println(resultado); // Esto imprimirá 5 porque 'resultado' recibió el valor de 'num' antes del incremento

Y lo que está escrito en el curso es esto:

int num = 5;
int resultado = num++; //num es atribuido primero a la variable resultado y depués es incrementado para 6
System.out.println(num); // imprime 5
System.out.println(resultado); // imprime 6

Gracias. ..

Efectivamente, ya me quedó más claro lo que se muestra en el ejemplo y lo que explicó Brenda, pero lo que dice David también es cierto, yo también tenía confusión por eso.