Los operadores son simbolos que realizan alguna funcion en uno o dos operandos , estos operandos pueden ser : variables , constantes , etc.
Los operadores que requieren de un operando se llaman operadores unitarios.
Los operadores que requieren de dos operandos se llaman operadores binarios.
Los operadores pueden ser clasificados de la siguiente manera :
OPERADORES ARITMETICOS
Operador | Utilizacion | Operacion |
---|---|---|
+ | operando1 + operando2 | Suma dos operandos enteros o reales |
- | operando1 - operando2 | Resta dos operandos enteros o reales |
* | operando1 * operando2 | Multiplica dos operandos enteros o reales |
/ | operando1 / operando2 | Divide dos operandos enteros o reales.Si ambos operandos son enteros el resultado es un entero , en cualquier otro caso el resultado es real. |
% | operando1 % operando2 | Obtiene el resto de una division entera , es decir , los operandos deben ser enteros |
Importante : Cuando realizamos alguna de estas operaciones entre operandos de diferentes tipos de datos , el resultado sera del tipo de dato de precision mas alta de los operandos.
Por ejemplo si multiplicamos un int y un float , el resultado sera float.
Los tipos byte y short son convertidos a int(por ejemplo si multiplicamos dos operandos de tipo short el resultado sera de tipo int).
suma
int a=200,b=100,suma;
suma=a+b;
System.out.println(suma);
el resultado es un entero porque los operandos son enteros
resta
float c=150f,d=50,resta;
resta=c-d;
System.out.println(resta);
el resultado es un float porque los operandos son de tipo float
multiplicacion
float e=30f,multiplicacion;
int f=5;
multiplicacion=e*f;
System.out.println(multiplicacion);
el resultado es de tipo float porque al multiplicar un operando de tipo int con otro operando de tipo float el de mayor precision es el de tipo float.
division
double g=40d,division;
int h=8;
division=g/h;
System.out.println(division);
el resultado es de tipo double,porque al dividir un operando de tipo double entre un operando de tipo int,el de mayor precision es el de tipo double.
resto de division entera
int i=10,j=6;
int resto=i%j;
System.out.println(resto);
el resultado de este operador siempre sera entero,por ello,este operador debemos usarlo solo con operandos enteros.
OPERADORES DE RELACION
Los operadores de relacion realizan comparaciones entre dos operandos, el resultado de dicha comparacion es un valor booleano true(verdadero) o false(falso).
Operador | Utilizacion | Operacion |
---|---|---|
< | operando1 < operando2 | ¿ el operando1 es menor que el operando2 ? |
<= | operando1 <= operando2 | ¿ el operando1 es menor o igual que el operando2 ? |
> | operando1 > operando2 | ¿ el operando1 es mayor que el operando2 ? |
>= | operando1 >= operando2 | ¿ el operando1 es mayor o igual que el operando2 ? |
== | operando1 == operando2 | ¿ el operando1 es igual que el operando2 ? |
!= | operando1 != operando2 | ¿ el operando1 es distinto que el operando2 ? |
Como el resultado de una operacion de relacion es un valor booleano, podemos utilizar operandos de tipo booleano para guardar el resultado de dicha operacion.
A continuacion un ejemplo empleando todos los operadores de relacion:
int x=100;
float y=200;
boolean menor,menorigual,mayor,mayorigual,igual,distinto;
menor=x<y;
menorigual=x<=y;
mayor=x>y;
mayorigual=x>=y;
igual=x==y;
distinto=x!=y;
//mostramos en pantalla los valores de las variables
System.out.println(menor);
System.out.println(menorigual);
System.out.println(mayor);
System.out.println(mayorigual);
System.out.println(igual);
System.out.println(distinto);
El ejemplo anterior realiza lo siguiente:
Declara una variable de tipo int x=100 y una variable de tipo float y=200; a continuacion son declaradas seis variables de tipo boolean : menor , menorigual , mayor , mayorigual, igual , distinto.
Luego asigamos valores a estas seis variables,dichos valores son el resultado de realizar operaciones de relacion.
Por ejemplo,la variable menor recibe el valor del resultado de la operacion x < y , es decir 100 < 200 , como podemos observar , el resultado de dicha operacion es el valor booleano true(verdadero) , por lo tanto a la variable menor se le asigna el valor true.
De igual modo se le asigna valores a las otras cinco variables.
Los valores de las seis variables son los siguientes:
menor = true
menorigual = true
mayor = false
mayorigual = false
igual = false
distinto = true
OPERADORES LOGICOS
Los operadores logicos evaluan una relacion logica(de la logica proposicional como : AND,OR,NOT,XOR) entre dos expresiones(una expresion puede estar formada por operaciones de relacion) , y dan como resultado un valor booleano (true o false).
Operador | Utilizacion | Operacion |
---|---|---|
&& | expresion1 && expresion2 | AND. El resultado es true si el valor de ambas expresiones es true,si uno de ellos es false, el resultado es false |
& | expresion1 & expresion2 | AND. El resultado es true si el valor de ambas expresiones es true,si uno de ellos es false,el resultado es false |
|| | expresion1 || expresion2 | OR. El resultado es false si el valor de ambas expresiones es false,si uno de ellos es true, el resultado es true |
| | expresion1 | expresion2 | OR. El resultado es false si el valor de ambas expresiones es false,si uno de ellos es true, el resultado es true |
! | !expresion | NOT. El resultado es true si el valor de la expresion es false. el resultado es false si el valor de la expresion es true |
^ | expresion1 ^ expresion2 | XOR. El resultado es true si el valor de una expresion es true y el valor de la otra expresion es false, en cualquier otro caso el resultado es false |
AND
int var1=10,var2=20,var3=30,var4=40;
boolean var_and1=var1>var2 && var3<=var4;
boolean var_and2=var1>var2 & var3<=var4;
//mostramos en pantalla los valores de las variables booleanas
System.out.println(var_and1);
System.out.println(var_and2);
En este ejemplo declaramos 4 variables de tipo int y le asignamos un valor entero a cada una, luego declaramos dos variables booleanas:var_and1 y var_and2.
La variable var_and1 toma el valor del resultado de realizar una operacion logica con el operador AND && sobre dos expresiones (la primera expresion es var1>var2 y la segunda expresion es var3<=var4,ambas expresiones son operaciones de relacion).
El resultado de la expresion var1>var2 es false y el resultado de la expresion var3<=var4 es true (estos resultados se obtienen al analizar ambas expresiones de acuerdo a las definiciones de la tabla de operadores logicos).
Por lo tanto el resultado de la operacion false && true es false.
Diferencia entre && y &
La diferencia entre && y & es que si se utiliza && y la primera expresion es false, el segundo operando no es evaluado , y el resultado de la operacion es false.
Si se utiliza & ambas expresiones son evaluadas.
OR
float p=10,q=5;
boolean r=p<=0 || q==7; // r=false
boolean s=p==10 || q>8; // s=true
//mostramos en pantalla los valores de las variables booleanas
System.out.println(r);
System.out.println(s);
Diferencia entre || y |
La diferencia entre || y | es que si se utiliza || y la primera expresion es true, el segundo operando no es evaluado , y el resultado de la operacion es true.
Si se utiliza | ambas expresiones son evaluadas.
NOT
boolean p=true;
boolean q=!p; // q = false
//mostramos en pantalla el valor de q
System.out.println(q);
XOR
double a=200d;
float b=45f;
boolean c=a!=0 ^b==100; // c=true
//mostramos en pantalla el valor de c
System.out.println(c);
OPERADORES UNITARIOS
Los operadores unitarios se aplican a un solo operando y son los siguientes
Operador | Utilizacion | Operacion |
---|---|---|
~ | ~operando | Complemento a 1(cambiar ceros por unos y unos por ceros).El caracter ~ es el ASCII 126.El operando debe de ser de tipo entero |
- | -operando | Cambia de signo al operando(esto es, se calcula el complemento a 2, que es el complemento a 1 mas 1).El operando puede ser de tipo entero o real |
OPERADORES A NIVEL DE BITS
OPERADORES DE ASIGNACION
OPERADOR CONDICIONAL
1 Responses So Far:
Las Vegas, NV Casinos & Slot Machines - MapYRO
Free Slot Machines in Las Vegas, NV | Free Slot Machines & Slot 춘천 출장마사지 Machines. MapYRO Casino is an online gaming, gambling and 하남 출장마사지 entertainment destination 서울특별 출장마사지 in 1xbet korean Las Vegas, 상주 출장안마 Nevada.