Hola y bienvenidos a esta elección.
A continuación vamos a ver el tema de precedencia de operadores en java están listos.
Vamos si recordamos está la tabla de los operadores en java y en esa tabla podemos observar la precedencia
de cada uno de los operadores pero para poder entenderla más detalle vamos a poner en práctica algunos
ejercicios bien así que vamos a limpiar nuestro método main y vamos a declarar las siguientes variables
declaramos la variable x igual a 5 posteriormente la variable ye igual a 10 y la variable z pero en
este caso va a ser la evaluación de la siguiente expresión vamos a hacer un incremento de la variable
X y posteriormente le vamos a sumar el valor de la variable ye y posteriormente se va a decretar esta
variable.
Así que aquí la pregunta es cuál es el valor de la variable z según la elección que vimos de los operadores
usarios en este caso la variable X debe de incrementarse antes de ser utilizada ya que podemos observar
que el operador está antes de la variable.
Por lo tanto estamos haciendo un pre incremento de la variable así que el valor de la variable X en
este caso ya no es 5 como se inicia alisó sino X ya es igual a 6
y ahora la pregunta es qué valor tiene la variable.
Como estamos poniendo primero la variable y posteriormente el operador de decremento entonces esto es
un post decremento así que la variable no se va a decretar en este momento si no se va a incrementar
hasta la siguiente vez que se vuelva a utilizar.
Así que en este caso el valor de la variable que va a ser igual a 10 ya que primero se va a utilizar
tal cual con el valor que se ha definido o con el valor que contenga en este momento y después cuando
se vuelva a utilizar se va de incrementar.
Así que en conclusión la variable z debería de tener la suma de X yé por lo tanto Z debería de valer
16 vamos a comprobarlo imprimiendo cada uno de los valores de estas variables así que imprimimos el
valor de x
imprimimos el valor de yé
y finalmente el valor de z damos un formato al código para que todo quede dentro de la misma línea
damos un derecho ejecutamos nuestro ejercicio y podemos observar el valor de la variable X en este momento
ya se ha incrementado incluso se incrementó desde este momento.
Por lo tanto en lugar de valer 5 el valor ya vale 6 así que podemos observar que es correcto.
X vale 6 posteriormente el valor de la variable G inició con el valor de 10 en este momento se utilizó
el valor de 10 pero quedó un decremento pendiente ya que se aplicó el post decremento.
Así que en este punto se debe de decretar el valor de la variable.
Por lo tanto ya no vale 10 sino debe de valer 9 así que lo que se imprime es el valor 9.
Y finalmente según el análisis que realizamos el valor de z debe de ser igual a 16 ya que primero se
incrementa el valor de x.
Por lo tanto de 5 pasa a 6 y el valor de yé se utiliza tal cual se definió y posteriormente se decremento.
Así que para la evaluación de esa expresión G vale 10 así que tenemos 6 más 10 entonces z vale 16.
Por lo tanto el valor de z es igual a 16 y podemos observar que en este caso nuestra expresión evaluada
de izquierda a derecha tenemos toda esa expresión.
Las expresiones evaluan de izquierda a derecha primero se evaluaron los operadores un arioso así que
primero se evaluó este operador un ario y posteriormente se evaluó este operador un ario y finalmente
se evaluó la suma.
Así que aquí se les está aplicando la precedencia de operadores primero se aplican los operadores arios
y posteriormente los operadores como puede ser la suma o la resta según la tabla que podemos observar.
Por eso es un buen ejemplo para que podamos observar cómo funciona la precedencia de operadores primero
se aplicarán los operadores un ario según vimos del lado izquierdo y del lado derecho.
Y finalmente se realizó la suma ya una vez que se han evaluado estos operadores un arios podemos también
ejecutar paso a paso nuestro ejercicio para que veamos cómo se va moviendo cada uno de los valores conforme
se va ejecutando.
Línea a línea nuestro ejercicio.
Para esto vamos a poner un punto de ruptura pero el punto de ruptura no se puede poner en cualquier
lado sino que lo tenemos que poner en una línea de código.
Por ejemplo en esta línea donde hacemos una asignación o donde se ejecute alguna expresión así que lo
podemos poner en la línea 8 nos ponemos en esta sección de la ventana y damos clic simplemente con un
clic y esperamos a que se ilumine esta línea.
Esto se conoce como un punto de ruptura ya que cuando ejecutemos nuestro programa en modo de voz es
decir el modo paso a paso.
Aquí es donde se va a detener este programa y para quitar este punto de ruptura simplemente volvemos
a dar clic así que damos clic para establecer el punto de ruptura.
Podemos poner más puntos de ruptura sin embargo en este caso es suficiente con uno para que se detenga
en esta parte del programa la ejecución del programa y posteriormente vamos a ir ejecutando línea a
línea bien para ejecutar paso a paso vamos a dar clic derecho y seleccionamos la opción de debug Phil
en lugar de la opción de romboide.
Así que damos clic sobre Brookfield
y podemos observar que ya entramos en modo debug nos podemos dar cuenta debido a que en la parte superior
se activaron los botones del modo debug del modo paso a paso y tenemos varios controles.
Por ejemplo con este botón detenemos la ejecución paso a paso.
Con esto ponemos pausa y con esto ejecutamos todo el proyecto pero esto ya rompería la ejecución paso
a paso.
Esto únicamente lo vamos a ejecutar cuando ya queremos que se ejecute todo el código pero si queremos
ir ejecutando línea a línea entonces tenemos estos botones.
Por ejemplo si presionamos este botón se conoce como este over así que ejecuta una línea de código con
este botón salimos de la ejecución de la función en la cual estemos.
Por ejemplo en este caso el método main es una función.
Posteriormente vamos a ver más detalle el tema de funciones en este caso únicamente nos interesa ejecutar
estas líneas de código y posteriormente cuando veamos el tema de funciones volveremos a ejecutar paso
a paso para que entiendan cómo funciona cada uno de estos botones.
En este caso únicamente vamos a utilizar el botón de este over o también lo podemos ejecutar con la
tecla F8 así que presionamos este botón y podemos observar en la parte inferior nuestras variables en
esa sección tenemos nuestras variables se ha definido la variable X que es de tipo entero.
Aquí podemos observar también que aunque estamos utilizando el tipo bar en este caso ya se ha inferido
el tipo ya que tenemos la literal de tipo 5 que es una literal entera se asigna el valor de 5 a nuestra
variable y por lo tanto en este momento ya es de tipo intro y ya no se puede modificar este tipo.
Una vez que se ha creado esta variable así que la variable x todo el tiempo que se utilice va a ser
de tipo entero y su valor inicial es el valor de 5 así que ya ejecutamos nuestra primera línea de código.
Ahora estamos sobre la segunda línea pero aún no se ejecuta para que se ejecute volvemos a presionar
el botón de mover o la tecla de F8 así que presionamos este botón y ahora podemos observar que se creó
la variable yé también de tipo entero y se le asignó el valor de 10 así que ya se ejecutaron esas dos
líneas de código ya tenemos creadas estas dos variables y ahora aquí viene la parte interesante debido
a que el valor de la variable X es 5 pero estamos haciendo un incremento por lo tanto en este momento
debe de cambiar el valor a 6 y en este momento el valor de la variable vale 10 y estamos haciendo un
post decremento.
Por lo tanto en este momento no se va a modificar el valor de yé sino hasta la siguiente vez que se
vuelva a utilizar esta variable como en esta línea donde se imprime el valor de IE.
Así que este valor de yé debe de ser 10 así que tenemos los valores de 6 y 10 por lo tanto Z debe de
valer 16.
Vamos a comprobarlo volvemos al presionar el botón de este over y podemos ver que ya se creó la variable
z de tipo entero y el valor es igual a 16.
Y vamos a ver cómo quedaron nuestras variables después de ejecutar esta línea.
El valor de x quedó con el valor de 6 ya se incrementó el valor de Yen tenía un decremento pendiente
por lo tanto pasó del valor de 10 a 9 y Z quedó con el valor de 16 según la expresión que evaluamos
así que volvemos a ejecutar presionamos este over y si cambiamos al tabulador de output podemos empezar
a ver la salida paso a paso.
Así que x vale 6 de nueva cuenta presionamos este Over el valor de yé vale 9 volvemos a presionar este
over y finalmente el valor de z vale 16.
Volvemos a presionar este botón y entonces termina la ejecución de nuestro programa así que esa es otra
forma de ejecutar nuestro ejercicio podemos hacerlo paso a paso para que veamos más claramente cualquier
duda que tengamos podemos ir resolviendo más claramente.
Vamos a quitar este punto de ruptura y de esta manera pudimos ejecutar nuestro ejercicio.
Paso a paso bien vamos a ver un segundo ejemplo del manejo de presencia de operadores vamos a mandar
a la consola lo siguiente hagamos un salto de línea y posteriormente ejemplo 2
de precedencia de operadores y vamos a poner la siguiente expresión bar declaramos la validez del resultado
y vamos a poner la expresión 4 más 5 por 6 entre 3 y vamos a analizar esta expresión recordemos que
los operadores que tienen mayor prioridad es el operador primero tenemos los paréntesis si es que los
tuviéramos incluyendo a los operadores un Ariosa como pueden ser los de incremento o los de cambio de
signo como es el menos posteriormente tenemos los operadores como puede ser el de multiplicación división
operador módulo etcétera y posteriormente en el orden tenemos los operadores como es la suma o la resta
así que vamos a analizar nuestra expresión de izquierda a derecha es como analizamos las expresiones
así que primero encontramos una suma debido a que tiene mayor prioridad la multiplicación.
En este caso continuamos evaluando la expresión y lo primero que se debería de realizar es la multiplicación
o la división ya que tienen mayor prioridad.
Sin embargo sí debemos de decidir entre cuál operación realizar si una multiplicación o la división
se va a ejecutar lo primero que encontremos de izquierda a derecha así que lo primero que encontramos
es la multiplicación.
Así que tendríamos que realizar primero esta multiplicación.
El resultado de esto se aplicaría posteriormente la división y finalmente resultado de esto se aplicaría
la suma así que vamos a escribir como quedaría esta expresión lo primero que se debería evaluar de izquierda
a derecha es la multiplicación.
Así que tendríamos cinco por seis.
Queda pendiente la suma y el resultado de esto la aplicaríamos la división ya que es lo siguiente que
se tendría que evaluar
y el resultado de esto la aplicaríamos la suma así que así es como quedaría nuestra expresión si la
agrupamos con paréntesis precisamente para que podamos observar qué expresión toma prioridad ahora entonces
el resultado sería como sigue.
Se empezaría a formar de la siguiente manera.
Primero se realiza la multiplicación cinco por seis tenemos el valor de 30.
El resultado de esto se le va a aplicar la división entre tres volvemos a agrupar y el resultado de
esto nos faltaría agregar la suma así que vamos a continuar si volvemos a evaluar lo que está dentro
de los paréntesis treinta entre tres.
No regresaría el valor de días a esto falta realizar la suma y por lo tanto la expresión final sería
cuatro más diez así que por último cuatro más diez el resultado debería de ser 14.
Vamos a comprobarlo guardamos cambios y ejecutamos y podemos observar que estamos en lo correcto.
El resultado de la expresión es igual a 14.
Pero qué pasa si tenemos esta misma expresión pero utilizamos paréntesis.
Así que vamos a utilizar de nueva cuenta nuestra variable de resultado.
Vamos a utilizar exactamente la misma expresión
mandamos a imprimir el resultado pero simplemente con usar paréntesis por ejemplo en este caso al inicio
de la expresión.
Esto modifica toda la prioridad.
Primero se va a hacer la suma.
Posteriormente el resultado de esto se va a realizar la multiplicación y finalmente la división.
Así que el resultado cambia radicalmente.
Guardamos cambios y ejecutamos y podemos observar que el resultado en lugar de ser 14 debido a que ya
hicimos modificaciones utilizando los paréntesis en este caso tendríamos lo siguiente 4,5 tendríamos
9 posteriormente por 6.
Esto nos regresa al valor de 54 y finalmente 54 entre tres nos va a regresar 18.
Por ello es que el resultado ahora es igual a 18 así que podemos observar que dependiendo de los operadores
que utilicemos modifica la prioridad con que se ejecuta cada una de estas operaciones.
Bien vamos a ver un segundo ejemplo así que como resumen podemos llevarnos a la tabla tenemos primero
los operadores un arios.
Estos son los que tienen la máxima prioridad.
Posteriormente los paréntesis.
Esto rompe también con cualquier otra prioridad de los operadores así que lo que está en paréntesis
se va ejecutar primero.
Pero si tenemos por ejemplo un operador un ario como podría ser más más X suponiendo que tenemos declarada
esta variable entonces toma prioridad primero.
Estos operadores arios primeros ejecuta esa expresión y posteriormente lo que esté en paréntesis.
Y después tenemos los demás operadores como puede ser multiplicación división u operador de módulo esto
serían los siguientes operadores a tomar en cuenta.
Y así podemos continuar con los demás operadores como puede ser la suma la resta y otro tipo de operadores
según la tabla que podemos observar.
Así que poco a poco nos vamos a ir familiarizando y aprendiendo cada uno de estos conceptos.
Pero lo importante es que sepamos que existe una prioridad cuando estamos manejando los operadores en
java.
Bien eso es todo por esta elección y nos vemos en el siguiente video.
Saludos.