NEW: Get your ticket for Hacking with Swift Live 2019! >>

< Previous: Tipos de datos   Next: Interpolación de cadenas de carácteres >

Operadores

Los operadores son esos pequeños símbolos que aprendiste en tus primeras clases de matemáticas + para la adición (suma), - para la sustracción (resta), * para la multiplicación, / para la división, = para asignar un valor, entre otros. Todos estos juntos con otros más existen también en Swift.

Probemos los básicos - por favor, escribe esto en tu playground:

var a = 10
a = a + 1
a = a - 1
a = a * a

En el panel de resultados, verás 10, 11, 10 y 100 respectivamente. Ahora, prueba con esto:

var b = 10
b += 10
b -= 10

+= es el operador que significa "suma y asigna a". En nuestro caso de ejemplo significa "toma el valor actual de b, súmale 10 y asigna el resultado de nuevo a b". Como puedes imaginar -= hace lo mismo pero restando en vez de sumar. Entonces, el código muestra 10, 20, 10 en el panel de resultados.

Algunos de estos operadores también se pueden usar sobre otros tipos de datos. Como puedes imaginar, puedes sumar dos números decimales (Double):

var a = 1.1
var b = 2.2
var c = a + b

Cuando tratamos cadenas de caracteres (String), el operador + las concatena. Por ejemplo:

var name1 = "Tim McGraw"
var name2 = "Romeo"
var both = name1 + " and " + name2

Esto va a mostrar "Tim McGraw and Romeo" en el panel de resultados.

Otro operador muy común que verás es conocido como módulo y en Swift se indica con el símbolo %. Significa "divide el número de la izquierda de forma equitativa por el número de la derecha y devuelve el remanente". De esta forma, 9 % 3 devuelve 0 porque 3 divide de forma equitativa a 9, mientras que 10 % 3 devuelve 1, porque 10 dividido entre 3 devuelve el remanente 1.

Nota: Si has comprado Hacking with Swift y estás usando la exclusiva guía complementaria de este curso, verás qué útil te resultará este operador más adelante.

Operadores de comparación

Swift proporciona un conjunto de operadores con los que puedes realizar comparaciones de valores. Por ejemplo:

var a = 1.1
var b = 2.2
var c = a + b

c > 3
c >= 3
c > 4
c < 4

El código de arriba muestra el operador "mayor que" (>), "mayor igual que" (>=) y "menor que" (<). En el panel de resultados verás true, true, false, true - estos son Boolean porque el resultado de cada sentencia puede ser solamente true o false.

Si quieres verificar la igualdad, no puedes utilizar = porque este ya tiene un significado: se utiliza para asignar un valor a una variable. Entonces, Swift ofrece una alternativa == que significa "es igual a". Por ejemplo:

var name = "Tim McGraw"
name == "Tim McGraw"

Esto muestra true en el panel de resultados. Ahora, hay algo que puede pillarte y es que en Swift las cadenas de caracteres (String) se distinguen por el tipo de letra (case-sensitive: mayúsculas, minúsculas, etc), que quiere decir que "Tim McGraw", "TIM MCGRAW" y "TiM mCgRaW" se consideran distintas. Si utilizas == para comparar dos cadenas de caracteres, necesitas asegurarte de que son del mismo tipo de letra.

Existe un operador más que quiero mostrarte, se llama operador "not" indicado con el símbolo !. Sí, es solo un signo de exclamación. Esto, colocado delante de una sentencia, significa lo contrario de lo que indica esta. Por ejemplo:

var stayOutTooLate = true
stayOutTooLate
!stayOutTooLate

Esto va a mostrar en el panel de resultados true, true, false - el último valor aparece allí porque invierte el anterior true.

También puedes combinar ! con = para obtener != o "desigualdad". Por ejemplo:

var name = "Tim McGraw"
name == "Tim McGraw"
name != "Tim McGraw"

HACKING WITH SWIFT LIVE This July is a new two-day event where you'll be inspired by great speakers on day one then learn all the amazing new features from WWDC on day two – click here for more information and tickets.

< Previous: Tipos de datos   Next: Interpolación de cadenas de carácteres >
MASTER SWIFT NOW
Buy Testing Swift Buy Practical iOS 12 Buy Pro Swift Buy Swift Design Patterns Buy Swift Coding Challenges Buy Server-Side Swift (Vapor Edition) Buy Server-Side Swift (Kitura Edition) Buy Hacking with macOS Buy Advanced iOS Volume One Buy Advanced iOS Volume Two Buy Hacking with watchOS Buy Hacking with tvOS Buy Hacking with Swift Buy Dive Into SpriteKit Buy Swift in Sixty Seconds Buy Objective-C for Swift Developers Buy Beyond Code

Was this page useful? Let me know!

Click here to visit the Hacking with Swift store >>