[Swift]配列の条件に一致するインデックスを取得するには?

Swift

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

Swiftで条件に一致する要素のインデックスを取得する方法を紹介します。

スポンサーリンク

方法

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

配列の条件に一致する要素のインデックスを取得するには、firstIndexメソッドを使います。

まず、「array.firstIndex{}」のように、firstIndexメソッドを呼び出します。

そして、firstIndexのクロージャー内に条件式を指定します。

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

array.firstIndex { 条件式 }

firstindexメソッドを使うことで、条件式でtrueを返した最初の要素のインデックスを取得することができます。

firstIndexメソッドの戻り値は、オプショナル型になっています。

なので、戻り値のインデックスを使う際は、オプショナル型であることを考慮する必要があります。

条件に一致する最後の要素のインデックスを取得する場合は、lastIndexメソッドを使います。

lastIndexメソッドの使い方は、firstIndexメソッドと同じです。

使用例

以下は、使用例です。

var numbers = [1, 2, 3, 4, 5]

print(numbers.firstIndex { $0 == 3 } ?? -1) //2
print(numbers.firstIndex { $0 > 5 } ?? -1) //-1

コメント

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