Comparison operators
Comparison operators work with boolean and integer values.
Equality:
==
, for booleans and integersBoth sides of the equality operator may be optional, even of different levels, so it is for example possible to compare a non-optional with a double-optional (
??
).1 == 1 // is `true` 1 == 2 // is `false`
true == true // is `true` true == false // is `false`
let x: Int? = 1 x == nil // is `false`
let x: Int = 1 x == nil // is `false`
// Comparisons of different levels of optionals are possible. let x: Int? = 2 let y: Int?? = nil x == y // is `false`
// Comparisons of different levels of optionals are possible. let x: Int? = 2 let y: Int?? = 2 x == y // is `true`
Inequality:
!=
, for booleans and integers (possibly optional)Both sides of the inequality operator may be optional, even of different levels, so it is for example possible to compare a non-optional with a double-optional (
??
).1 != 1 // is `false` 1 != 2 // is `true`
true != true // is `false` true != false // is `true`
let x: Int? = 1 x != nil // is `true`
let x: Int = 1 x != nil // is `true`
// Comparisons of different levels of optionals are possible. let x: Int? = 2 let y: Int?? = nil x != y // is `true`
// Comparisons of different levels of optionals are possible. let x: Int? = 2 let y: Int?? = 2 x != y // is `false`
Less than:
<
, for integers1 < 1 // is `false` 1 < 2 // is `true` 2 < 1 // is `false`
Less or equal than:
<=
, for integers1 <= 1 // is `true` 1 <= 2 // is `true` 2 <= 1 // is `false`
Greater than:
>
, for integers1 > 1 // is `false` 1 > 2 // is `false` 2 > 1 // is `true`
Greater or equal than:
>=
, for integers1 >= 1 // is `true` 1 >= 2 // is `false` 2 >= 1 // is `true`
Last updated
Was this helpful?