文書   >   Swift 標準ライブラリ >     Collections   >   Sequence and Collection Protocols   >   Sequence   >   prefix(while:)   >   prefix(while:)
インスタンスメソッド
prefix(while:)
指定された predicate を満たす最初の、連続する要素を含む部分シーケンスを返します。
宣言
func prefix(while predicate: (Self.Element) throws -> Bool) rethrows -> AnySequence<Self.Element>
パラメータ
predicate | シーケンスの要素を引数として受け取り、その要素を結果に含めるべきかどうかを示すブール値を返すクロージャ。 |
戻り値
predicate を満たす最初の、連続した要素の部分シーケンス。
議論
以下の例では、prefix(while:) メソッドを使用して、numbers 配列の先頭にある正の数を検索します。最初の負の値を含めず、それまでの numbers のすべての要素が結果に含まれます。
let numbers = [3, 7, 4, -2, 9, -6, 10, 1]
let positivePrefix = numbers.prefix(while: { $0 > 0 })
// positivePrefix == [3, 7, 4]
predicate (述語) がシーケンス内のすべての要素と一致する場合、結果のシーケンスにはシーケンスのすべての要素が含まれます。
複雑さ:O(n)、ここで n はコレクションの長さです。