文書   >   Swift   >   Swift 標準ライブラリ >     Collections   >   Supporting Types   >   Slice   >   prefix(upTo:)
インスタンスメソッド
prefix(upTo:)
コレクションの先頭から指定された位置までの、指定位置を含まない部分シーケンスを返します。
宣言
パラメータ
end | 結果の部分シーケンスの "最後を過ぎた" インデックス。end は、コレクションの有効なインデックスでなければなりません。 |
戻り値
end 位置を含まない、end 位置までの部分シーケンス。
議論
結果の部分シーケンスには、end の位置の要素が含まれません。以下の例では、整数の配列の中の 40 番のインデックスを検索し、配列の接頭辞 (prefix) をそのインデックスを含めずに出力します。
let numbers = [10, 20, 30, 40, 50, 60]
if let i = numbers.firstIndex(of: 40) {
print(numbers.prefix(upTo: i))
}
// Prints "[10, 20, 30]"
コレクションの開始インデックスを end パラメータとして渡すと、空の部分シーケンスになります。
print(numbers.prefix(upTo: numbers.startIndex))
// Prints "[]"
prefix(upTo:) メソッドを使用することは、コレクションのサブスクリプトとして部分半開放範囲を使用することと同じです。prefix(upTo:) よりもサブスクリプトの記法が好まれます。
if let i = numbers.firstIndex(of: 40) {
print(numbers[..<i])
}
// Prints "[10, 20, 30]"
複雑さ:O(1)