Nota: Este tutorial es una continuación de la Serie de Tutoriales de Scala. Si aún no has leído Guía para Principiantes de Scala y IF ELSE en Scala, entonces échales un vistazo.
Introducción
Un operador
es un símbolo o una función que indica una operación que se realizará con uno o más operandos. Existen muchos tipos diferentes de operadores, mientras que un operando se puede pensar como una variable
. Los operadores son la base de todos los lenguajes de programación. Los operadores nos permiten realizar varios tipos de operaciones en operandos. Los operadores informan al compilador que realice operaciones tales como matemáticas (aritméticas), lógicas, de asignación, etc., y finalmente muestre el resultado.
Hay diferentes tipos de operadores que se utilizan en muchos lenguajes de programación así como en Scala, que son los siguientes:
- Operadores Relacionales
- Operadores Aritméticos
- Operadores de Asignación
- Operadores Lógicos
- Operadores Bit a Bit
Van a aprender sobre los operadores anteriores tanto teóricamente como programáticamente.
Operadores Relacionales
Los operadores relacionales se utilizan principalmente para realizar una comparación entre dos o más variables. Si has leído el tutorial de IF ELSE en Scala entonces has observado que has aprovechado el poder de los operadores relacionales en las condiciones IF ELSE
.
Estos operadores relacionales devuelven un valor booleano
, es decir, Verdadero o Falso.
A continuación están los símbolos de los operadores relacionales que utilizas para aplicarlos a las variables (Fuente: Operadores en Scala):
-
Igual a(==):
Comprueba si las dos variables o operandos dadas son iguales o no. Si lo son, entonces devuelve verdadero, de lo contrario devuelve falso. -
Diferente de(!=):
Es lo contrario del operadorigual a
, o lo puedes decir el complemento booleano del operadorigual a
. Comprueba si los dos operandos dados son iguales o no. Si no lo son, entonces devuelve verdadero, de lo contrario devuelve falso. -
Mayor Que(>):
Verifica si el primer operando es mayor que el segundo operando. Si lo es, devuelve verdadero; de lo contrario, devuelve falso. -
Menor Que(<):
Es lo opuesto al operadormayor que
ya que verifica si el primer operando es menor que el segundo operando. Si es así, devuelve verdadero; de lo contrario, devuelve falso. -
Mayor o Igual Que(>=):
Este operador verifica si el primer operando es mayor o igual que el segundo operando. Si lo es, devuelve verdadero; de lo contrario, devuelve falso. -
Menor o Igual Que(<=):
Es lo opuesto al operadormayor o igual que
. Verifica si el primer operando es menor o igual que el segundo operando. Si es así, devuelve verdadero; de lo contrario, devuelve falso.
Vamos a entender los operadores relacionales con la ayuda de un código.

Para ejecutar el código de arriba, lo único que necesitas hacer es escribir scala relation_op.scala y deberías ver una salida como la mostrada a continuación.

A continuación, aprenderás sobre los operadores lógicos
.
Operadores Lógicos
Se utilizan principalmente en declaraciones condicionales como una declaración IF ELSE
o incluso en un bucle while
. Amalgama dos o más condiciones o también complementa el resultado de la condición original considerada. (Fuente: Operadores en Scala)
-
Operador Lógico AND:
Devuelve true cuando ambas condiciones se satisfacen. En caso contrario, devuelve false. Utilizar “and” actúa como un proxy para el operador &&. -
Operador Lógico OR:
Devuelve true cuando una (o ambas) de las condiciones se satisfacen. En caso contrario, devuelve false. Utilizar “or” actúa como un proxy para el operador ||. -
Lógico NOT: devuelve verdadero si la condición que se considera no se satisface. De lo contrario, devuelve falso. El uso de “not” actúa como alternativa para el operador !.


Operadores Aritméticos (Matemáticos)
Como el nombre indica, los operadores aritméticos se utilizan para realizar operaciones matemáticas entre operandos.
Los siguientes son los operadores aritméticos que se utilizan comúnmente en Scala (Fuente: Operadores en Scala):
-
Adición: suma $(+)$ dos variables/operandos.
-
Substracción: resta $(-)$ dos operandos.
-
Multiplicación: multiplica $(\times)$ dos operandos.
-
División: divide $(/)$ el primer operando con el segundo operando.
-
Exponenciación:
Retorna la potencia (exponencial) de los operandos. Básicamente, cuando un operando se eleva a la potencia del segundo operando $(x^y)$ o $(x**y)$. -
Módulo:
Cuando el primer operando se divide por el segundo operando, el resto o sobrante se conoce como módulo (%).
Veamos rápidamente un pequeño fragmento de código y analicemos los resultados.
En este ejemplo, estarás utilizando listas
en lugar de definir simplemente variables. A diferencia de una variable, una Lista puede contener n
números de valores con varios tipos de datos, representan una lista enlazada en Scala y son inmutables. Realizarás las operaciones aritméticas en las dos listas en lugar de dos variables.


Operadores de Asignación
Para asignar un valor a una variable, se utilizan operadores de asignación. Para esto, el operando de la derecha se considera como un valor, mientras que el operando de la izquierda generalmente es una variable a la cual se le asigna el valor. El valor puede tener diferentes tipos de datos como int
, float
, etc. El tipo de dato de ambas variables y valores debería ser el mismo de lo contrario el compilador genera un error. (Fuente: Operadores en Scala)
-
Asignación simple:
Este operador se utiliza para asignar un valor a la variable $(=)$. -
Sumar y asignar:
Se utiliza para sumar el operando de la izquierda con el de la derecha y finalmente asignarlo a la variable del lado izquierdo $(+=)$. -
Restar y asignar:
Similar al asignar y sumar. Este se utiliza para restar el operando de la izquierda con el de la derecha finalmente, asignándolo a una variable del lado izquierdo $(-=) $. -
Multiplicación y Asignación:
Se utiliza para multiplicar el operando izquierdo con el operando derecho y luego asignarlo a la variable del lado izquierdo (× =). -
División y Asignación:
Se utiliza para dividir el operando izquierdo entre el operando derecho y finalmente asignar el valor a la variable del lado izquierdo (/=).
También existen muchos otros operadores de asignación similares. Finalmente, vamos a escribir un código para comprender cómo funcionan programáticamente.


Conclusión
Felicitaciones por completar este tutorial de Scala.
Si has leído los dos tutoriales anteriores, has cubierto ahora tres temas diferentes en Scala. Una práctica útil sería combinar las habilidades adquiridas de todos ellos y escribir un programa Scala desde cero. Esto no solo aumentará tu confianza sino que también hará más fácil tu trabajo mientras sigues con temas mucho más avanzados en Scala.
Referencias:
Por favor, no dude en preguntar cualquier duda relacionada con este tutorial en la sección de comentarios de abajo.
Source:
https://www.datacamp.com/tutorial/operators-in-scala