ava proporciona un rico conjunto de operadores para manipular variables. Podemos dividir a todos los operadores de Java en los siguientes grupos:

  • Operadores aritméticos
  • Operadores relacionales
  • Operadores de bit a bit
  • Operadores lógicos
  • Operadores de Asignación
  • Operadores Misceláneos

Operadores Aritméticos

Los operadores aritméticos se utilizan en expresiones matemáticas de la misma manera que se utilizan en álgebra. La tabla siguiente enumera los operadores aritméticos –

Suponga que la variable entera A tiene 10 y la variable B tiene 20, entonces …

Operador

Descripción

Ejemplo

+ (Suma)

Agrega valores a cada lado del operador.

A + B va a dar 30

– (Resta)

Substrae el operando derecho del operando de la izquierda.

A – B va a dar -10

* (Multiplicación)

Multiplica los valores a ambos lados del operador.

A * B va a dar 200

/ (Division)

Divide el operando de la mano izquierda por el operando de la mano derecha.

B / A va a dar 2

% (Modulo)

Divides left-hand operand by right-hand operand and returns remainder.

B % A va a dar 0

++ (Incrementa)

Divide el operando de la mano izquierda por el operando de la derecha y devuelve el resto.

B++ va a dar 21

— (Decrementa)

Disminuye el valor del operando 1.

B– va a dar 19

 

Ejemplo:

El siguiente programa es un ejemplo sencillo que demuestra los operadores aritméticos.  Escribe el siguiente programa en el archivo Test.java, compilado y ejecutalo.

 

Esto producirá el siguiente resultado:

Salida:

a + b = 30
a -- b = -10
a * b = 200
b / a = 2
b % a = 0
c % a = 5
a++   = 10
b--   = 11
d++   = 25
++d   = 27

Operadores Relacionales

Suponga que la variable A tiene 10 y la variable B tiene 20, entonces

Operador

Descripción

Ejemplo

== (igual a)

Comprueba si los valores de dos operandos son iguales o no, si es así entonces la condición se convierte en verdadera.

(A == B) faslo.

!= (no igual que)

Comprueba si los valores de dos operandos son iguales o no, si los valores no son iguales entonces la condición se convierte en verdadera.

(A != B) verdadero.

> (mayor que)

Comprueba si el valor del operando izquierdo es mayor que el valor del operando derecho, si es así entonces la condición se convierte en verdadera.

(A > B)falso

< (menor que)

Comprueba si el valor del operando izquierdo es menor que el valor del operando derecho, en caso afirmativo, la condición se convierte en verdadera.

(A < B) verdadero

>= (mayor o igual que)

Comprueba si el valor del operando izquierdo es mayor o igual al valor del operando derecho, en caso afirmativo, la condición se convierte en verdadera.

(A >= B) falso

<= (menor o igual que)

Comprueba si el valor del operando izquierdo es menor o igual al valor del operando derecho, en caso afirmativo, la condición se convierte en verdadera.

(A <= B) verdadero

 

El siguiente programa es un ejemplo simple que demuestra los operadores relacionales. Escribe el siguiente programa  en el archivo Test.java compílelo y ejecutivo.

 

Esto producirá el siguiente resultado:

Salida:

a == b = false
a != b = true
a > b = false
a < b = true
b >= a = true
b <= a = false

Operadores bit a bit

Java define varios operadores bit a bit, que pueden aplicarse a los tipos enteros, long, int, short, char y byte.

El operador bit a bit trabaja en bits y realiza operaciones bit a bit. Supongamos que a = 60 y b = 13; Ahora en formato binario serán como sigue –

A = 0011 1100

B = 0000 1101

—————–

A & b = 0000 1100

A | b = 0011 1101

A ^ b = 0011 0001

~ A = 1100 0011

La tabla siguiente enumera los operadores bit a bit

Suponga que la variable int A tiene 60 y la variable B mantiene 13 entonces

Operador

Descripción

Ejemplo

& (Bit a bit y)

Operador binario “Y”  copia un bit al resultado si existe en ambos operandos.

(A & B) dará 12 que es 0000 1100

| (Bit a bit o)

Operador Binario O El operador copia un bit si existe en cualquiera de los operandos.

(A | B) dará 61 que es 0011 1101

^ (XOR bit a bit)

Operador XOR binario copia el bit si está configurado en un operando pero no ambos.

(A ^ B) dará 49 que es 0011 0001

~ (Complemento bit a bit)

El Operador de Complementos Binarios es unario y tiene el efecto de “mover” los bits.

(~ A) dará -61 que es 1100 0011 en forma de complemento 2 debido a un número binario

<< (shift izquierdo)

El operador binario de cambio  izquierdo. El valor de operandos izquierdo se mueve a la izquierda por el número de bits especificado por el operando derecho.

A << 2 dará 240 que es 1111 0000

>> (shift derecho)

Operador de cambio binario derecho. El valor de operandos izquierdo se desplaza hacia la derecha por el número de bits especificado por el operando derecho.

A >> 2 dará 15 que es 1111

>>> (Cambio de cero a la derecha)

Desplaza el operador de relleno de cero a la derecha. El valor de operandos izquierdo se desplaza hacia la derecha por el número de bits especificado por el operando derecho y los valores desplazados se rellenan con ceros.

A >>> 2 dará 15 que es 0000 1111

 

El siguiente programa es un ejemplo simple que demuestra los operadores bit a bit. Escribe el siguiente programa  en el archivo Test.java compílelo y ejecutivo.

 

Esto producirá el siguiente resultado:

Salida:

a & b = 12
a | b = 61
a ^ b = 49
~a = -61
a << 2 = 240
a >> 15
a >>> 15

Operadores Lógicos

Supongamos que las variables booleanas A son válidas y la variable B mantiene false, entonces

Operador Descripción Ejemplo
&& (lógico y) Se llama operador AND lógico. Si ambos operandos no son cero, entonces la condición se convierte en verdadera. (A && B) es falso
|| (Lógico o) Llamado Operador lógico. Si cualquiera de los dos operandos no es cero, entonces la condición se convierte en verdadera. (A || B) es cierto
! (Lógico no) Se llama Operador NOT lógico. Se usa para invertir el estado lógico de su operando. Si una condición es verdadera entonces el operador NOT lógico hará falsa. ! (A && B) es cierto

 

El siguiente programa es un ejemplo simple que demuestra los operadores bit a bit. Escribe el siguiente programa  en el archivo Test.java compílelo y ejecutivo.

 

Esto producirá el siguiente resultado:

Salida:

a && b = false
a || b = true
!(a && b) = true

Operadores de Asignación

Operador Descripción Ejemplo
= Operador de asignación simple. Asigna valores desde los operandos del lado derecho al operando del lado izquierdo. C = A & plus; B asignará el valor de A & plus; B en C
& Plus; = Operador de asignación y asignación.Agrega el operando derecho al operando izquierdo y asigna el resultado al operando izquierdo. C & plus; = A es equivalente a C = C & plus; UN
-benzóico. Restar operador de asignación Y. Sustrae el operando derecho del operando izquierdo y asigna el resultado al operando izquierdo. C – = A es equivalente a C = C – A
* = Multiplicar operador de asignación Y. Multiplica el operando derecho con el operando izquierdo y asigna el resultado al operando izquierdo. C * = A es equivalente a C = C * A
/ = Operador de división y asignación. Divide el operando izquierdo con el operando derecho y asigna el resultado al operando izquierdo. C / = A es equivalente a C = C / A
% = Módulo Y operador de asignación. Se necesita módulo usando dos operandos y asignar el resultado al operando izquierdo. C% = A es equivalente a C = C% A
<< = Operador de desplazamiento a la izquierda Y. C << = 2 es el mismo que C = C << 2
>> = Operador de desplazamiento a la derecha y operador de asignación. C >> = 2 es el mismo que C = C >> 2
& = Operador de asignación AND bit a bit. C = 2 es igual que C = C y 2
^ = Operador exclusivo de bit a bit y operador de asignación. C ^ = 2 es lo mismo que C = C ^ 2
| = Operador OR de asignación de bits incluido. C | = 2 es lo mismo que C = C | 2

 

El siguiente programa es un ejemplo simple que demuestra los operadores bit a bit. Escribe el siguiente programa  en el archivo Test.java compílelo y ejecutivo.

 

Esto producirá el siguiente resultado:

Salida:

c = a + b = 30
c += a  = 40
c -= a = 30
c *= a = 300
c /= a = 1
c %= a  = 5
c <<= 2 = 20
c >>= 2 = 5
c >>= 2 = 1
c &= a  = 0
c ^= a   = 10
c |= a   = 10

Operadores extras

Existen otros operadores que son aceptados por Java

Operador condicional (?:)

El operador condicional también se conoce como el operador ternario. Este operador consta de tres operandos y se utiliza para evaluar expresiones booleanas. El objetivo del operador es decidir qué valor debe asignarse a la variable. El operador se escribe como:

 

Ejemplo:

 

Esto producirá el siguiente resultado:

Salida:

Value of b is : 30
Value of b is : 20

Operador instanceof

Este operador se utiliza sólo para variables de referencia de objeto. El operador comprueba si el objeto es de un tipo particular (tipo de clase o tipo de interfaz). Instanceof operador se escribe como:

 

Si el objeto referido por la variable en el lado izquierdo del operador pasa la comprobación IS-A para el tipo de clase / interfaz en el lado derecho, entonces el resultado será verdadero. A continuación se muestra un ejemplo

 

 

Esto producirá el siguiente resultado:

Salida:

true

Este operador devolverá true si el objeto que se compara es la asignación compatible con el tipo de la derecha. A continuación hay otro ejemplo:

Ejemplo:

 

Esto producirá el siguiente resultado:

Salida:

true

Precedencia de los operadores en Java

La precedencia del operador determina la agrupación de términos en una expresión. Esto afecta cómo se evalúa una expresión. Ciertos operadores tienen mayor precedencia que otros; Por ejemplo, el operador de multiplicación tiene mayor precedencia que el operador de adición –

Por ejemplo, x = 7 + 3 * 2; Aquí x se asigna 13, no 20 porque el operador * tiene mayor precedencia que +, por lo que primero se multiplica con 3 * 2 y luego se agrega a 7.

Category

Operator

Associativity

Postfix

>() [] . (operador punto)

De izquierda a derecha

Unario

>++ – – ! ~

De derecha a izquierda

Multiplicación

>* /

De izquierda a derecha

Adición

>+ –

De izquierda a derecha

Shift

>>> >>> <<

De izquierda a derecha

Relacional

>> >= < <=

De izquierda a derecha

Igualdad

>== !=

De izquierda a derecha

Bit a bit AND

>&

De izquierda a derecha

Bit a bit XOR

>^

De izquierda a derecha

Bit a bit OR

>|

De izquierda a derecha

Logico AND

>&&

De izquierda a derecha

Logico OR

>||

De izquierda a derecha

Condicional

?:

De derecha a izquierda

Asignación

>= += -= *= /= %= >>= <<= &= ^= |=

De derecha a izquierda

 

¿Qué sigue?

El siguiente capítulo explicará sobre el control de bucle en la programación Java. El capítulo describirá varios tipos de bucles y cómo estos bucles se pueden utilizar en el desarrollo de programas Java y para qué fines se están utilizando.