文書   >   Swift 標準ライブラリ   >   Collections   >   Supporting Types   >   AnyBidirectionalCollection   >   index(where:)
インスタンスメソッド
index(where:)
コレクションの要素が指定された predicate (述語) を満たす最初のインデックスを返します。
宣言
func index(where predicate: (Element) throws -> Bool) rethrows -> AnyIndex?
パラメータ
predicate | 要素をその引数として受け取り、渡された要素が一致を表すかどうかを示すブール値を返すクロージャ。 |
戻り値
predicate (述語) が true を返す最初の要素のインデックス。コレクション内の全ての要素が指定された predicate (述語) を満たさない場合は、nil を返します。
議論
predicate (述語) を使用して Equatable プロトコルに準拠しない型の要素を検索したり、特定の条件に一致する要素を検索したりできます。次に、文字 "A" で始まる学生名を見つける例を示します。
let students = ["Kofi", "Abena", "Peter", "Kweku", "Akosua"]
if let i = students.index(where: { $0.hasPrefix("A") }) {
print("\(students[i]) starts with 'A'!")
}
// Prints "Abena starts with 'A'!"