文書   >   Swift   >   Swift 標準ライブラリ   >   Collections   >  stride(from:through:by:)


汎用関数


stride(from:through:by:)


開始値から終了値まで、多分終了値も含むシーケンスを、指定された量だけステッピングして返します。





宣言


func stride<T>(from start: T, through end: T, by stride: T.Stride) -> StrideThrough<T>
	 where T : Strideable


パラメータ


startシーケンスに使用する開始の値。シーケンスに値が何か含まれている場合、最初の値が start です。
endシーケンスを制限する終了値。end は、stride のステップを使用して start から生成できる場合に限り、結果のシーケンスの要素です。
stride各繰り返し値でステップする量。正の stride は上向きに反復し、負の stride は下向きに反復します。


戻り値


start から end までの、end を恐らく含むシーケンス。シーケンスの各値は、stride で区切られています。


議論


この関数を使用して、Strideable プロトコルに準拠する任意の型の値 (整数や浮動小数点型など) をストライドすることができます。start から始まり、シーケンスの各連続する値は、次の値が end を超えるまで stride を追加します。



for radians in stride(from: 0.0, through: .pi * 2, by: .pi / 2) {
    let degrees = Int(radians * 180 / .pi)
    print("Degrees: \(degrees), radians: \(radians)")
}
// Degrees: 0, radians: 0.0
// Degrees: 90, radians: 1.5707963267949
// Degrees: 180, radians: 3.14159265358979
// Degrees: 270, radians: 4.71238898038469
// Degrees: 360, radians: 6.28318530717959



stride(from:through:by:) を使用して、上方向または下方向にストライドするシーケンスを作成できます。stride として負の値を渡して、より高い開始点または低い end のシーケンスを作成できます。



for countdown in stride(from: 3, through: 1, by: -1) {
    print("\(countdown)...")
}
// 3...
// 2...
// 1...



end に渡す値は、シーケンスに含まれることは保証されていません。stride による start からのステップが end を生成しない場合、シーケンス内の最後の値は、end を超える 1 ステップ前になります。



for multipleOfThree in stride(from: 3, through: 10, by: 3) {
    print(multipleOfThree)
}
// 3
// 6
// 9



end から離れて移動する stride として値を渡すと、シーケンスには値は含まれません。



for x in stride(from: 0, through: 10, by: -1) {
    print(x)
}
// Nothing is printed.



関連





汎用の制約


T : Strideable


以下も見よ





ストライド





目次
Xcode の新機能

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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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












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