Los operadores permiten manipular el valor de las
variables, realizar operaciones matemáticas con sus valores y comparar
diferentes variables.
1. Operadores
de asignación;
2. Operadores
aritméticos;
3. Incremento
y Decremento;
4. Operadores
relacionales;
5. Operadores
lógicos;
6. Operadores
a nivel de bits (bitwise);
1.
Asignación
(=)
Este operador se utiliza para guardar un valor específico
en una variable.
var_nombre_N =
valorN
A la izquierda del operador, siempre debe indicarse el nombre de una variable. A
la derecha del operador, se pueden indicar variables,
valores, condiciones lógicas, etc. La asignación es siempre a una variable.
2.
Aritméticos
var num1 = 10;
var num2 = 5;
var reslt = 0; (ojo debes limpiar la variable y declararla)
Operador
|
Acción
|
Ejemplo
|
Resultado
|
+
|
Suma
|
num1 + num2
|
15
|
-
|
Resta
|
num1 - num2
|
5
|
*
|
Multiplicación
|
num1 * num2
|
50
|
/
|
División
|
num1 / num2
|
2
|
%
|
Resto de la división
|
num1 % num2
|
0
|
Otros Ejemplos
Definimos dos variables tipo número
numero2 += 3; //
numero2 = numero2 + 3 = 8 (asigna un
nuevo valor)
numero2 -= 1; //
numero2 = numero2 - 1 = 4
numero2 *= 2; //
numero2 = numero2 * 2 = 10
numero2 /= 5; //
numero2 = numero2 / 5 = 1
numero2%= 4; //
numero2 = numero2 % 4 = 1
3.
Incremento
y decremento
Estos dos operadores solamente son válidos para las
variables numéricas
Cada uno tiene tres
formas:
(Incremento)
var numero = 5;
++numero; o numero++
o numero = numero + 1;
numero = 6
(Decremento)
var numero = 5;
--numero; o numero--
o numero = numero - 1;
numero = 4
Algo muy importante de aclarar es que el operador puede
aparecer después del nombre de la variable, es decir, (numero++). Si el
operador ++ se indica antes del
nombre de la variable, su valor se incrementa
antes de realizar cualquier otra operación. Si el operador ++ se indica
después del nombre de la variable, su valor se incrementa después de ejecutar la sentencia o operación en la
que aparece.
Si antepongo un signo – menos – al número contenido en la
variable, lo vuelve negativo.
El operador de asignación puede combinarse con un
operador aritmético.
variable=variable operador expresión (x= x + y) es
equivalente a variable operador = expresión x+=y
4.
Relacionales
Con operador relacional entendemos la relación que tiene
un valor respecto a otro.
var num1 = 10;
var num2 = 5;
Operador
|
Acción
|
Ejemplo
|
Resultado
|
>
|
Mayor
que
|
num1>num2
|
true
(1)
|
>=
|
Mayor
o igual
|
num1>=num2
|
False
(0)
|
<
|
Menor
que
|
num1<num2
|
False
(0)
|
<=
|
Menor
o igual
|
num1<=num2
|
False
(0)
|
==
|
Igual
|
num1==num2
|
False
(0)
|
===
|
Exactamente
igual
|
num1===num2
|
False
(0)
|
!=
|
Distinto
|
num1!=num2
|
true
(1)
|
!==
|
Es
estrictamente distinto
|
num1!==num2
|
true
(1)
|
Los operadores relacionales,
producen un resultado 1 si la relación es verdadera, y 0 si la relación es
falsa.
Si
var x = 4 y var y = “4”
y comparamos x==y el
resultado es true pero si x === y el resultado es falso
5.
Lógicos
Se
utilizan para realizar comparaciones entre valores, numéricos o no, dando como
resultado un valor booleanos (true, false)
Operador
|
Acción
|
Ejemplo
|
Resultado
|
&&
|
and
|
(x
< 10 && y > 1)
|
true
|
||
|
or
|
(x
== 5 || y == 5)
|
false
|
!
|
not
|
!(x
== y)
|
true
|
Tablas de la verdad
Operador lógico AND (yo lo asocio con la *)
x
|
y
|
resultado
|
true (1)
|
true (1)
|
true (1)
|
true (1)
|
false(0)
|
false (0)
|
false (0)
|
true (1)
|
false (0)
|
false (0)
|
false (0)
|
false (0)
|
Operador lógico OR (yo lo asocio con la suma)
x
|
y
|
resultado
|
true (1)
|
true (1)
|
true (1)
|
true (1)
|
false (0)
|
true (1)
|
false (0)
|
true (1)
|
true (1)
|
false (0)
|
false (0)
|
false (0)
|
Operador lógico NOT
x
|
resultado
|
true (1)
|
false (0)
|
false (0)
|
true (1)
|
6.
Operadores a nivel de bits (bitwise)
Los operadores a nivel de
bit tratan sus operandos como una secuencia de 32 bits (unos y ceros) en lugar
de números decimales, hexadecimales u octales.
Por ejemplo, el número decimal nueve es 1001 en su representación
binaria. Los operadores a nivel de bit realizan las operaciones en esas
representaciones binarias, pero los valores devueltos son los valores
numéricos.
Operador
|
Uso
|
Descripción
|
AND binario
|
a & b
|
Devuelve un uno en cada posición en la que ambos
operandos sea uno.
|
OR binario
|
a | b
|
Devuelve un uno en cada posición en la que uno o ambos operandos
sea uno.
|
Bitwise XOR
|
a ^ b
|
Devuelve un uno en cada posición en la que los bits
correspondientes en cada uno de los operandos, pero no en ambos, es uno.
|
Bitwise NOT
|
~ a
|
Invierte los bits del operando.
|
Left shift
|
a << b
|
Desplaza en representación binaria b (< 32) bits a
la izquierda, desplazando en ceros desde la derecha.
|
right shift
|
a >> b
|
Desplaza en representación binaria b (< 32) bits a
la derecha, descartando los bits desplazados fuera.
|
Tabla de la verdad AND &
Operación
|
Resultado
|
0 & 0
|
0
|
0 & 1
|
0
|
1 & 0
|
0
|
1 & 1
|
1
|
Ejemplo AND &
Decimal
|
Binary
|
5
|
00000000000000000000000000000101
|
1
|
00000000000000000000000000000001
|
5 & 1
|
00000000000000000000000000000001 (1)
|
Tabla de la verdad OR (|)
Operación
|
Resultado
|
0 | 0
|
0
|
0 | 1
|
1
|
1 | 0
|
1
|
1 | 1
|
1
|
Ejemplo OR (|)
Decimal
|
Binary
|
5
|
00000000000000000000000000000101
|
1
|
00000000000000000000000000000001
|
5 | 1
|
00000000000000000000000000000101 (5)
|
Tabla de la verdad XOR (^)
Operación
|
Resultado
|
0 ^ 0
|
0
|
0 ^ 1
|
1
|
1 ^ 0
|
1
|
1 ^ 1
|
0
|
Ejemplo XOR (^)
Decimal
|
Binary
|
5
|
00000000000000000000000000000101
|
1
|
00000000000000000000000000000001
|
5 ^ 1
|
00000000000000000000000000000100 (4)
|
Ejemplo NOT (~) Complemento
a 2
Decimal
|
Binary
|
5
|
00000000000000000000000000000101
|
~5
|
11111111111111111111111111111010 (-6)
|
Left Shift (<<)
Decimal
|
Binary
|
5
|
00000000000000000000000000000101
|
5 << 1
|
00000000000000000000000000001010 (10)
|
Right Shift (>>)
Decimal
|
Binary
|
5
|
00000000000000000000000000000101
|
5 >>> 1
|
00000000000000000000000000000010 (2)
|
Las operaciones de shift son
útiles para descifrar el input de un dispositivo externo, como un conversor
analógico/digital.
Los valores tipo string (cadenas) no son más que una secuencia de caracteres,
cualquier carácter pero encerrado entre comillas. Se utilizan para almacenar y
manipular texto.