6.7 Operadores en Java: Prioridad de operadores

En Java, como en muchos otros lenguajes de programación, los operadores son herramientas esenciales que le permiten realizar operaciones con variables y valores. Se clasifican en diferentes categorías según el tipo de operación que realizan: aritmética, lógica, relacional, asignación, entre otras. Comprender la precedencia de los operadores es esencial para escribir expresiones claras y correctas, evitando errores lógicos y de interpretación.

Operadores aritméticos

Los operadores aritméticos se utilizan para realizar operaciones matemáticas básicas. Los operadores aritméticos en Java incluyen:

  • + (adición)
  • - (resta)
  • * (multiplicación)
  • / (división)
  • % (módulo - resto de la división)

Ejemplo:

int a = 10;
int b = 5;
suma int = a + b; // 15
resta int = a - b; // 5
multiplicación int = a * b; // 50
división int = a/b; // dos
int módulo = a % b; // 0

Operadores lógicos

Los operadores lógicos se utilizan en expresiones booleanas y son esenciales para el control de flujo en programas Java. Los operadores lógicos incluyen:

  • && (Y lógico)
  • || (OR lógico)
  • ! (NO lógico)

Ejemplo:

booleano verdadero = verdadero;
booleano falso = falso;
resultado booleanoE = verdadero && falso; // FALSO
resultado booleanoOR = verdadero || FALSO; // verdadero
resultado booleanoNOT = !verdadero; // FALSO

Operadores relacionales

Los operadores relacionales se utilizan para comparar dos valores y devolver un valor booleano como resultado. Incluyen:

  • == (igual a)
  • != (diferente de)
  • > (mayor que)
  • < (menos de)
  • >= (mayor o igual que)
  • <= (menor o igual a)

Ejemplo:

entero x = 10;
int y = 20;
booleano es igual a = (x == y); // FALSO
booleano diferente = (x! = y); // verdadero
booleano mayor = (x > y); // FALSO
booleano menor = (x < y); // verdadero
booleano mayorOrEqual = (x >= y); // FALSO
booleano menorOrEqual = (x <= y); // verdadero

Operadores de asignación

Los operadores de asignación se utilizan para asignar valores a variables. El operador de asignación básico es =, pero también existen operadores de asignación combinados:

  • += (asignación de suma)
  • -= (tarea de resta)
  • *= (tarea de multiplicación)
  • /= (asignación de división)
  • %= (asignación de módulo)

Ejemplo:

número entero = 10;
número += 5; // el número ahora es 15
número -= 3; // el número ahora es 12
número *= 2; // el número ahora es 24
número /= 4; // el número ahora es 6
número %= 2; // el número ahora es 0

Precedencia del operador

La precedencia de los operadores determina el orden en el que se evalúan los operadores en las expresiones. Los operadores con mayor precedencia se evalúan antes que aquellos con menor precedencia. En caso de operadores con la misma precedencia, la evaluación se realiza de izquierda a derecha.

Aquí está la lista de precedencia de operadores en Java, de mayor a menor:

  1. Operadores Postfix: expresión++, expresión--
  2. Operadores unarios: ++expresión, --expresión, +, -, . , ~ (bit a bit NO)
  3. Operadores de multiplicación/división/mod: *, /, %
  4. Operadores de suma/resta: +, -
  5. Operadores de turno: <<, >>, >>>
  6. Operadores relacionales: <, >, <=, >=, instanciade
  7. Operadores de igualdad: ==, !=
  8. Operador AND bit a bit: &
  9. Operador XOR bit a bit: ^
  10. Operador OR bit a bit: |
  11. Operadores lógicos AND: &&
  12. Operadores lógicos OR: ||
  13. Operador ternario: ? y :
  14. Operadores de asignación: =, +=, -=, *=, / = , %=, &=, ^=, |=, < ;<=, >>=, >>>=

Es importante tener en cuenta que los paréntesis () se pueden utilizar para cambiar el orden en el que se evalúan las expresiones, lo que obliga a que ciertas operaciones tengan prioridad sobre otras.

Ejemplo:

resultado entero = 10 + 3 * 2; // el resultado es 16, la multiplicación tiene prioridad sobre la suma
int resultadoConParéntesis = (10 + 3) * 2; // el resultado es 26, los paréntesis cambian la prioridad

Comprender la precedencia de los operadores es crucial para escribir código claro y eficiente en Java. Saber cómo interactúan los operadores entre sí permite a los programadores construir expresiones complejas sin ambigüedad y con el comportamiento esperado.

En resumen, a la hora de aprender a programar en Java, es fundamental dominar los diferentes tipos de operadores y la precedencia entre ellos. Esto garantizará que pueda crear algoritmos precisos y eficientes, que son fundamentales para desarrollar software sólido y confiable.

Ahora responde el ejercicio sobre el contenido:

_¿Cuál de las siguientes alternativas representa correctamente el orden de precedencia de los operadores en Java, de mayor a menor?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Imagen del artículo Operadores en Java (aritméticos, lógicos, etc.): Conversión de tipos (casting)

Siguiente página del libro electrónico gratuito:

38Operadores en Java (aritméticos, lógicos, etc.): Conversión de tipos (casting)

4 minutos

¡Obtén tu certificado para este curso gratis! descargando la aplicación Cursa y leyendo el libro electrónico allí. ¡Disponible en Google Play o App Store!

Disponible en Google Play Disponible en App Store

+ 6,5 millones
estudiantes

Certificado gratuito y
válido con código QR

48 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo, audio y texto.