インスタンスメソッド


prefix(upTo:)


コレクションの先頭から指定された位置を含まない、そこまでのサブシーケンスを返します。


System Swift iOS 14.0+ iPadOS 14.0+ Mac Catalyst 14.0+

macOS 11.0+ tvOS 14.0+ visionOS 1.0+ watchOS 7.0+

func prefix(upTo end: Self.Index) -> Self.SubSequence

パラメータ


end

結果のサブシーケンスの "末尾を越えた" インデックス。end はコレクションの有効なインデックスでなければなりません。



戻り値


end 位置までの、それを含まないサブシーケンス。



議論


結果の部分シーケンスには、位置 end の要素は含まれません。以下の例では、整数の配列で数値 40 のインデックスを検索し、そのインデックスを含まない、それまでの配列のプレフィックスを出力します。


  1. let numbers = [10, 20, 30, 40, 50, 60]
  2. if let i = numbers.firstIndex(of: 40) {
  3. print(numbers.prefix(upTo: i))
  4. }
  5. // Prints "[10, 20, 30]"

コレクションの開始インデックスを end パラメータとして渡すと、空のサブシーケンスが生成されます。


  1. print(numbers.prefix(upTo: numbers.startIndex))
  2. // Prints "[]"

prefix(upTo:) メソッドを使用することは、コレクションの添え字として部分半開放範囲を使用することと同じです。添え字表記は prefix(upTo:) よりも好まれます。


  1. if let i = numbers.firstIndex(of: 40) {
  2. print(numbers[..<i])
  3. }
  4. // Prints "[10, 20, 30]"

複雑さ:

O(1)













トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ