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