文書   >   Swift   >   Swift 標準ライブラリ  >     手動でメモリ管理   >   UnsafeBufferPointer   >   prefix(upTo:)
インスタンスメソッド
prefix(upTo:)
コレクションの開始から指定された位置まで (ただし、それを含まれない) の部分シーケンスを返します。
宣言
パラメータ
end | 結果となる部分シーケンスの "最後を過ぎた" インデックス。end は、コレクションの有効なインデックスでなければなりません。 |
戻り値
end の位置までの、それを含まない部分シーケンス。
議論
結果の部分シーケンスには、位置 end の要素が 含まれません。以下の例では、整数の配列で数値 40 のインデックスを検索し、そのインデックスまでの、それを含まない配列の接頭辞を出力します。
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)
トップへ
トップへ
トップへ
トップへ
トップへ