Swift は、標準的な C の比較演算子をすべてサポートしています。

  • 等しい (a == b)
  • 等しくない (a != b)
  • より大きい (a > b)
  • より小さい (a < b)
  • より大きい、または等しい (a >= b)
  • より小さい、または等しい (a <= b)
NOTE
Swift には、2 つのアイデンティティ演算子(=== と !==)も存在し、2 つのオブジェクトがともに、同じオブジェクトインスタンスを参照しているかどうかを確認することができます。詳細な情報は、Classes and Structures を確認してください。

各比較演算子は、文が true かどうかを示す Bool 値を返します。

1 == 1   // true, 1 は 1 と等しい
2 != 1   // true, 2 は 1 と等しくない
2 > 1    // true, 2 は 1 より大きい
1 < 2    // true, 1 は 2 より小さい
1 >= 1   // true, 1 は 1 より大きい、または等しい
2 <= 1   // false, 2 は 1 より小さくなく、等しくもない

比較演算子は、if 文のような条件文でよく使用されます。

let name = "world"
if name == "world" {
    print("hello, world")
} else {
    print("I'm sorry \(name), but I don't recognize you")
}
// name は "world" と一致するため、"hello, world" と出力

if 文の詳細については、Control Flow を確認してください。

タプル内の値が互いに比較可能であれば、同じ個数の値を持つタプルを比較することもできます。例えば、Int や String は比較可能ですので、(Int, String) 型のタプルを比較することができます。一方、Bool は比較できないため、ブール値を含むタプルを比較することはできません。

タプルは、等しくない値が見つかるまで、左から右に向かって一つずつ比較されます。すべての要素が等しい場合に、タプル自体が等しいこととなります。

(1, "zebra") < (2, "apple")   // true, 1 より 2 が小さい
(3, "apple") < (3, "bird")    // true, 3 は 3 と等しく、"apple" は "bird" より小さい
(4, "dog") == (4, "dog")      // true, 4 は 4 と等しく、"dog" は "dog" と等しい
NOTE
要素が 7 つ未満のタプルに利用できる比較演算子は、Swift の標準ライブラリに含まれています。要素が 7 つ以上のタプルを比較するには、比較演算子を実装する必要があります。

Portions of this page are translations based on work created and shared by Apple and used according to terms described in the Creative Commons Attribution 4.0 International License.