logo

Precedencia del operador Java

En esta sección aprenderemos los operador precedencia en Java junto con ejemplos.

expresión regular java $

¿Qué es la precedencia de operadores?

El precedencia del operador representa cómo se unen dos expresiones. En una expresión, determina la agrupación de operadores con operandos y decide cómo se evaluará una expresión.

Al resolver una expresión se deben tener en cuenta dos cosas: la primera es una precedencia y el segundo es asociatividad .

Precedencia del operador Java

Precedencia

La precedencia es la prioridad para agrupar diferentes tipos de operadores con sus operandos. Sólo tiene sentido si una expresión tiene más de un operador con mayor o menor precedencia. Primero se evalúan los operadores que tienen mayor prioridad. Si queremos evaluar primero los operadores de menor precedencia, debemos agrupar los operandos usando paréntesis y luego evaluar.

asociatividad

Debemos seguir la asociatividad si una expresión tiene más de dos operadores de la misma precedencia. En tal caso, una expresión se puede resolver ya sea de izquierda a derecha o De derecha a izquierda, respectivamente.

convertir caracteres a int java

Tabla de precedencia de operadores de Java

La siguiente tabla describe la precedencia y asociatividad de los operadores utilizados en Java.

Precedencia Operador Tipo asociatividad
15 ()
[]
·
Paréntesis
Subíndice de matriz
Selección de miembros
De izquierda a derecha
14 ++
--
Post-incremento unario
Post-decremento unario
De derecha a izquierda
13 ++
--
+
-
!
~
(tipo)
Preincremento unario
Predecremento unario
más unario
menos unario
Negación lógica unaria
Complemento unario bit a bit
elenco de tipo unario
De derecha a izquierda
12 *
/
%
Multiplicación
División
Módulo
De izquierda a derecha
11 +
-
Suma
Sustracción
De izquierda a derecha
10 <<
>>
>>>
Desplazamiento bit a izquierda
Desplazamiento bit a derecha con extensión de signo
Desplazamiento bit a derecha con extensión cero
De izquierda a derecha
9 <
<=
>
>=
en vez de
Relacional menor que
Relacional menor o igual
Relacional mayor que
Relacional mayor o igual
Comparación de tipos (solo objetos)
De izquierda a derecha
8 ==
!=
Relacional es igual a
Relacional no es igual a
De izquierda a derecha
7 & Bit a bit Y De izquierda a derecha
6 ^ O exclusivo bit a bit De izquierda a derecha
5 | O inclusivo bit a bit De izquierda a derecha
4 && Y lógico De izquierda a derecha
3 || O lógico De izquierda a derecha
2 ? : Condicional ternario De derecha a izquierda
1 =
+=
-=
*=
/=
%=
Asignación
tarea adicional
tarea de resta
Asignación de multiplicación
Asignación de división
Asignación de módulo
De derecha a izquierda

Nota: Cuanto mayor sea el número, mayor será la prioridad.

Ejemplo de precedencia de operadores de Java

Entendamos la precedencia de los operadores a través de un ejemplo. Considere la siguiente expresión y adivine la respuesta.

 1 + 5 * 3 

Quizás estés pensando que la respuesta sería 18 pero no es así. Porque el operador de multiplicación (*) tiene mayor prioridad que el operador de suma (+). Por lo tanto, la expresión primero evalúa 5*3 y luego evalúa la expresión restante, es decir, 1+15. Por tanto, la respuesta será 16 .

ordenación por inserción java

Veamos otro ejemplo. Considere la siguiente expresión.

 x + y * z / k 

En la expresión anterior, las operaciones * y / se realizan antes de + debido a la precedencia. y se multiplica por z antes de dividir por k debido a la asociatividad.