文書   >   Swift   >   Swift 標準ライブラリ   >   Collections   >   Range   >   index(_:offsetBy:limitedBy:)


インスタンスメソッド


index(_:offsetBy:limitedBy:)


与えられたインデックスから指定された距離にあるインデックスを、その距離が与えられた制限インデックスを超えていない限り返します。





宣言


func index(_ i: Bound, offsetBy distance: Int, limitedBy limit: Bound) -> Bound?

パラメータ


i配列の有効なインデックス。
distanceoffset i までの距離。
limit限界として使用すべきコレクションの有効なインデックス。distance > 0 の場合、limit は、効果があるためには i より大きい必要があります。同様に、distance < 0 の場合、limit は 効果があるためには i より小さい必要があります。


戻り値


そのインデックスが移動方向の限界 (limit) を超えない限り、インデックス i からの distance だけオフセットされたインデックス。その場合、このメソッドは nil を返します。


議論


以下の例では、配列の開始インデックスから 4 つ進んだ位置にあるインデックスを取得し、その位置にある要素を出力します。この操作では、制限する numbers.endIndex の値を超える必要はないため、成功します。


let numbers = [10, 20, 30, 40, 50]
let i = numbers.index(numbers.startIndex, offsetBy: 4)
print(numbers[i])
// Prints "50"


次の例では、numbers.startIndex から 10 番目のインデックスを取得しようとしますが、その距離は limit として渡されたインデックスを超えているため失敗します。


let j = numbers.index(numbers.startIndex,
                      offsetBy: 10,
                      limitedBy: numbers.endIndex)
print(j)
// Prints "nil"


distance として渡される値は、インデックスが limit として渡されてそれらの境界を越えてオフセットするのを妨げない限り、コレクションの境界を超えて i をオフセットしてはなりません。


複雑さ:O(1)


以下も見よ





インデックスの操作





目次
Xcode の新機能

  • 言語:Swift
  • SDK
  • Xcode 10.0+
  • フレームワーク
  • Swift 標準ライブラリ
  • 宣言
  • パラメータ
  • 戻り値
  • 議論
  • 以下も見よ












  • トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)