[Swift]構造体の配列を検索するには?

Swift

どうも、ちょげ(@chogetarou)です。

構造体を要素とする配列を検索する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

構造体の配列を検索するには、firstメソッドもしくはfilterメソッドを使います。

first

構造体の配列を検索するには、「array.first{条件式}」のように、firstメソッドを呼び出します。

検索の条件式では、配列の要素を「$0」で表現します。

また、構造体内のプロパティには、「$0.property」のようにアクセスします。

array.first {
   //条件式
}

firstメソッドは、条件式を満たす最初の要素が戻り値として返されます。

使用例

var persons : [Person] = [
    Person(name : "Taro", age : 20),
    Person(name : "Jiro", age : 15),
    Person(name : "Saburo", age : 10)
]

var searchPerson = persons.filter {
    $0.age < 18
}

filter

条件に合う複数の要素を検索するには、「array.filter{条件式}」のように、filterメソッドを呼び出します。

検索の条件式では、配列の要素を「$0」で表現します。

また、構造体内のプロパティには、「$0.property」のようにアクセスします。

array.filter { 条件式 }

filterメソッドは、条件式でtrueを返す構造体を全て配列として返します。

使用例

var persons : [Person] = [
    Person(name : "Taro", age : 20),
    Person(name : "Jiro", age : 15),
    Person(name : "Saburo", age : 10)
]

var searchPerson = persons.filter {
    $0.age < 18 //ageが18未満で検索
}
スポンサーリンク

まとめ

構造体の配列を検索するには、firstメソッドもしくはfilterメソッドを使います、

また、構造体のプロパティには、「$0.property」のようにアクセスします。

コメント

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