コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

Rubyでカウントアップ/ダウンをするメソッドあれこれ

逆引き的にお送りします。

環境

$ ruby -v
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]

メソッド

一定回数やる場合の times

x回繰り返すというときにつかえるもの、indexに入るのは0から

5.times { |n| p n }
# 0
# 1
# 2
# 3
# 4

指定した整数値から1ずつカウントアップする upto

決まった数から1ずつ挙げていきたい場合に使うupto

5.upto(7) { |n| p n }
# 5
# 6
# 7

なお、数が既に満たされている場合は何も実行されない

5.upto(4) { |n| p n }
# ブロック内のものは実行されない

指定した整数値から1ずつカウントダウンする downto

決まった数から1ずつ挙げていきたい場合に使う downto。uptoの逆。

10.downto(7) { |n| p n }
10
9
8
7

指定した数値から増加源させたい場合につかう step

細かく値を調整したいときに使える step 。incrementalする値も選べる。

5.step(6,0.5) { |n| p n }
# 5.0
# 5.5
# 6.0

小数値なども設定できるので、ループで取得できる値には気をつけること

# 0.3刻みなので、最後が4になるわけではない
5.step(4,-0.3) { |n| p n }
# 5.0
# 4.7
# 4.4
# 4.1

参考リンク