LoginSignup
0
0

More than 3 years have passed since last update.

RubyのRangeオブジェクトについて解説

Posted at

Rangeオブジェクトとは?

ある値の範囲を扱うためのオブジェクトのことです。
例えば 1~3 を表すときは次のように表現します。

irb(main):001:0> 1..3
=> 1..3
irb(main):002:0> (1..3).class
=> Range

to_a というメソッドを使って配列(Array)に変換することも出来ます。

irb(main):003:0> (1..3).to_a
=> [1, 2, 3]
irb(main):004:0> (1..3).to_a.class
=> Array

ちなみにドットを3つにすると、最後の値を含まない Range オブジェクトを作れます。

irb(main):006:0> (1...3).to_a
=> [1, 2] 

また、アルファベットについても Range オブジェクトを生成できます。

irb(main):011:0> ('a'..'e').to_a
=> ["a", "b", "c", "d", "e"]

Range オブジェクトの値の取り出し

配列と同じく each メソッドでそれぞれの値を展開して取り出せます。

irb(main):016:0> (1..5).each { |i| puts "#{i}" }
1
2
3
4
5
=> 1..5
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0