Ruby 2.5.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Rangeクラス > step

instance method Range#step

step(s = 1) {|item| ... } -> self[permalink][rdoc]
step(s = 1) -> Enumerator

範囲内の要素を s おきに繰り返します。

[PARAM] s:
各ステップの大きさを数値で指定します。負の数を指定することもできます。
[RETURN]
ブロックを指定した時は self を返します。
[RETURN]
ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
[RETURN]
ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)


(1..10).step(3) {|v| p v}
# => 1
#    4
#    7
#    10

("a".."f").step(2) {|v| p v}
# => "a"
#    "c"
#    "e"

(10..0).step(-3) {|v| p v}
# => 10
#     7
#     4
#     1