[Swift]配列のfilterメソッドでインデックスを取得するには?

Swift

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

Swiftで配列のfilterメソッドでインデックスを結果として返す方法を紹介します。

スポンサーリンク

方法

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

配列のfilterメソッドでインデックスを取得するには、indicesプロパティを使います。

まず、「array.indices」のように、配列のindicesプロパティにアクセスします。

次に、「array.indices.filter { }」のように、indicesからfilterメソッドを呼び出します。

最後に、filterメソッドのクロージャーに条件式を指定します。

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

//filterの条件式では、配列の要素をarray[$0]で表現
array.indices.filter { 条件式 }

indicesプロパティを使えば、配列のfilterメソッドでインデックスを取得することができます。

使用例

以下は、使用例です。

var array = ["a", "b", "c", "a", "c"]

var filterIndex = array.indices.filter { array[$0] == "a" } 

print(filterIndex) //[0, 3]

コメント

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