Swiftで配列に値が含まれるか確認する2つの方法!

Swift

Swiftの配列に指定した値が含まれているか確認する方法について書いています。
配列に値が含まれているか確認したいときにはcontainsメソッドを使うと良いです。

また、containsメソッドで配列の値が条件に合っているか確認することもできます。
サンプルコードは、Swiftバージョン5.8.1で検証しています。

containsメソッドで含まれているか確認する

配列からcontainsメソッドを呼び出して、含んでいるか確認したい値を渡すことで、真理値のtrueかfalseを返してくれます。
例えば、下記のように実行することができます。

let fruits = ["apple", "grape", "orange", "banana", "peach"]

if fruits.contains("orange") {
    print("配列にorangeが含まれています!")
} else {
    print("配列にorangeが含まれていません!")
}

最初にfruits変数に5つの値で配列を作成しています。

次の処理で、fruits変数からcontainsメソッドを呼んでいます。
containsメソッドに渡しているのが、配列に含まれているか確認したい値です。

今回はfruits変数の配列に「orange」が含まれているか確認しています。
含まれているので「配列にorangeが含まれています!」が出力されて処理が終わります。

containsメソッドで条件に合うか確認する

containsメソッドを使うときに、名前付き引数のwhereを使うことで、配列の値が条件に合っているか確認することもできます。
例えば、下記のように使うことができます。

let fruits = ["apple", "grape", "orange", "banana", "peach"]

if fruits.contains(where: { $0 == "banana" || $0 == "test" }) {
   print("条件に合っています!")
}

先ほどと同様に、fruits変数に5つの値で配列を作成しています。

次の処理で、fruits変数からcontainsメソッドを呼び出して、名前付き引数のwhereを使っています。
波括弧({})の中に条件を書くことができます。$0は配列の値になります。

今回は「{ $0 == "banana" || $0 == "test" }」としているので、配列の値が「banana」または「test」だったらtrueになります。
今回は条件に合うため、trueが返ってきて「条件に合っています!」を出力して処理が終わります。

Swiftで配列に値が含まれるか確認する方法まとめ

今回はSwiftで配列に値が含まれるか確認する方法について書きました。
記事の内容をまとめると、下記のようになります。

・containsメソッドに確認したい値を渡すことで、trueかfalseが返ってきた。
・containsメソッドでwhereを使うことにより、細かい条件をつけることができる。

コメント

タイトルとURLをコピーしました