protocol Comparable
Inheritance 
Equatable
View Protocol Hierarchy →


Import  import Swift 
Instance Methods
Returns true
if lhs
is equal to rhs
.
Equality implies substitutability. When x == y
, x
and
y
are interchangeable in any code that only depends on their
values.
Class instance identity as distinguished by tripleequals ===
is notably not part of an instance's value. Exposing other
nonvalue aspects of Equatable
types is discouraged, and any
that are exposed should be explicitly pointed out in
documentation.
Equality is an equivalence relation
x == x
istrue
x == y
impliesy == x
x == y
andy == z
impliesx == z
Inequality is the inverse of equality, i.e. !(x == y)
iff
x != y
.
Declaration
func ==(lhs: Self, rhs: Self) > Bool
Declared In
Equatable
Instances of conforming types can be compared using relational operators, which define a strict total order.
A type conforming to
Comparable
need only supply the<
and==
operators; default implementations of<=
,>
,>=
, and!=
are supplied by the standard library:Axioms, in addition to those of
Equatable
:x == y
impliesx <= y
,x >= y
,!(x < y)
, and!(x > y)
x < y
impliesx <= y
andy > x
x > y
impliesx >= y
andy < x
x <= y
impliesy >= x
x >= y
impliesy <= x