0
0

More than 1 year has passed since last update.

Rubyの範囲オブジェクトについてまとめてみた

Posted at

はじめに

Rubyの範囲オブジェクトについて学んだことをまとめました!

参考

  • プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで

範囲オブジェクトとは

「1から5まで」や「aからdまで」のように、「〜から〜まで」を示すオブジェクトのこと

範囲オブジェクトの書き方

下記のように、..もしくは...を使用して記述します。

範囲オブジェクトの例
1..5 #1以上5以下
1...5 #1以上5未満
'a'..'d' #aからdまで
'a...'d #aからcまで

範囲オブジェクトのクラス

範囲オブジェクトはRangeクラスになります。

範囲オブジェクトのクラス
puts (1..5).class #=>Range

範囲オブジェクトの使用機会

「〜から〜まで」が伴う処理に使うと便利です!
例えば、

  1. 配列aの2番目から4番目までを取得する
  2. 引数に渡した数値が「0から50まで」か判定する
  3. ある範囲を配列に置換する
    などが挙げられます。
    一つずつ見ていきましょう!
配列aの2番目から4番目までを取得する例
a = [1,2,3,4,5]
p a[1..3] #=>[2, 3, 4]
引数に渡した数値が「0から50まで」か判定する
def liquid?(num)
    puts (0..50).include?(num)  
end

liquid?(1) #=>true
liquid?(-1) #=>false
liquid?(50) #=>true
liquid?(51) #=>false
ある範囲を配列に置換する
p ('a'..'d').to_a #=>["a", "b", "c", "d"]
p (1...5).to_a #=>[1, 2, 3, 4]

まとめ

範囲オブジェクトは、「〜から〜まで」が伴う処理では、活用出来そうですね!
間違いやアドバイス等ありましたら、是非ご教示ください!

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