Swift operators
Unary Minus Operator
Reverts the value to a negative value
1
2
|
let two = 2
let minusTwo = -two // (-) unary operator, returns -2
|
Compound Assignment Operators
30
31
32
33
34
35
|
var foo = 1
foo += 2 // same as foo = foo + 2, result 3
foo -= 1 // same as foo = foo - 1, result 2
foo *= 3 // same as foo = foo * 3, result 6
foo /= 2 // same as foo = foo / 2, result 3
|
Comparison Operators
30
31
32
33
34
35
36
|
var bar = 3
foo == bar // compares if foo is equal to bar
foo != bar // compares if foo is diferent from bar
foo > bar // compare if foo is bigger than bar
foo < bar // compare if foo is smaller than bar
foo >= bar // compare if foo is bigger or equal than bar
foo <= bar // compare if foo is smaller or equal than bar
|
Nil Coalescing Operator
Nil coalescing operator allows the falback to a second option
30
31
32
33
34
|
var food = "banana"
var drink: String? // (?) maskes variable optional, value is in question, maybe exists maybe it does not
var stomach = food ?? drink // (??) coalescing operator if no food, then drink
|
Range Operator
Goes through a sequence of numbers
30
31
32
33
|
// loop through range of numbers from 0 to 4 (included)
for number in 0...4 {
print(number)
}
|
30
31
32
33
|
// loop through range of numbers from 0 to 4 (excluded)
for number in 0...<4 {
print(number)
}
|
Logical Operators
Not Operator (!)
30
31
32
33
|
let canAccess = false
if !canAccess { // ! inverts the variable
print("Can access")
}
|
And Operator (&&)
Both values must be true
30
31
32
|
if 2 == 2 && 5 == 5 {
return "Both are equal"
}
|
Or Operator (||)
One of the values must be true
30
31
32
|
if 5 == 2 || 5 == 5 {
return "One of them is equal"
}
|