ITキャリアの悩みを無料相談で解決! カウンセラーにITキャリア相談

【簡単・超入門】初心者でもわかるRuby forの使い方

作成: 2016.09.07 更新: 2020.04.23

>>10年後も職を失わない「求められる人材」になる

読むだけでIT転職が有利になる限定資料はこちら

あなたは、Rubyのfor文をちゃんと使いこなせていますか?

当記事ではプログラミング学習において初心者が躓きやすい繰り返し処理の「for文」を、わかりやすく徹底解説します。

そもそも繰り返し処理とは何かというところから、初心者でも必ず理解できるように解説していきますので、なんとなく使ってる方も必見です。

具体例やサンプルプログラムも用意しているので是非参考にしてください。

 

繰り返し処理とは何か

ruby for1
出典:buildinsider

繰り返し処理とは決まった回数や条件を満たしている間は同じ処理を繰り返し行う処理のことです。

具体的にイメージが湧きにくいとは思いますが、具体例などを用いて少しずつ噛み砕いていきます。

 

繰り返し処理の種類

Rubyの繰り返し処理の種類ですが、この記事で取り上げるforの他にwhile」「time」「loop」「untilなどがあります。

詳しく知りたい方は下記リンクを参考にしてください。

for文の使い方

for文の一般的に以下のような使い方をします。

for 変数 in オブジェクト do

繰り返す処理

end

ここで注意しなければならないポイントが2つあります。

1点目は変数についてです。
rubyには「予約語」というものが存在します。
予約語とは、使ってはいけない変数名のことです。
したがって、予約語を使用すると、エラーが出てしまいます。
※詳しく知りたい方は下記のリンクを参考にしてください。

【予約語】

 

2点目はオブジェクトについてです。

Rubyで扱える全てのデータは、オブジェクトと呼ばれます。
現実世界の数、文字、色、時間などはRubyで扱う場合にはオブジェクトという形で
データ化され、扱うことが可能となります。

for文では全てのオブジェクトを使用できるわけではありません。
具体的には配列オブジェクト、ハッシュオブジェクト、範囲オブジェクトです。
※オブジェクトに関して詳しく知りたい方は下記のリンクを参考にしてください。

【オブジェクト】

では具体例を見てみましょう。

範囲オブジェクトの場合

範囲オブジェクトとは、指定した最初の値と最後の値の範囲を表すオブジェクトのことです。数の範囲を表現するためのオブジェクトという認識で大丈夫です。

for num in 1..5 do
  puts "繰り返し処理#{num}回目"
end

上記のプログラムを実行すると

繰り返し処理1回目
繰り返し処理2回目
繰り返し処理3回目
繰り返し処理4回目
繰り返し処理5回目

という結果を得ます。

【解説】

この処理はnumという変数に1から5までそれぞれの数字が代入され処理が実行されます。

数字が一回代入されると一回処理が実行されます。

したがって、範囲オブジェクトの部分を1..10とすると1から10のそれぞれの数字に対して処理が行われるので、

計10回処理が行われます。

配列オブジェクトの場合

ruby for2

出典:テックキャンプ プログラミング教養教材

配列オブジェクトとは、1つの変数でたくさんの情報を持つことのできるオブジェクトのことです。

array = [1,2,3,4]
for num in array do
  puts num
end

上記のプログラムを実行すると

1
2
3
4

という結果を得ます。

【解説】

このプログラムは1行目に定義した、配列オブジェクトの一つ一つの要素に対して実行されます。

1回目の処理は1がnumに代入され1回目の繰り返し処理を実行、

2回目の処理は2がnumに代入され2回目の繰り返し処理を実行、

のような流れで計4回行われます。

もちろん文字列の場合でも下記のように実行されます。

array = [1,2,3,"ダァー!!!"]
for num in array do
  puts num
end
1
2
3
ダァー!!!

こちらの記事もご参考ください。

【5分で丸わかり】Ruby「配列オブジェクト」を図解で徹底解説!

ハッシュオブジェクトの場合

ruby for3

出典:テックキャンプ プログラミング教養教材

ハッシュオブジェクト(略称:ハッシュ)は1つの変数で複数のデータを持つことのできるオブジェクトです。

ハッシュオブジェクトは、自身の中にデータ(バリュー)とそれに対応するキーのセットを所持することができます。

students = {stu1: :太郎, stu2: :二郎, stu3: :イチロー}
for key, value in students
  puts "KEY:#{key},名前:#{value}"
end

上記のプログラムを実行すると

KEY:stu1,名前:太郎 KEY:stu2,名前:二郎 KEY:stu3,名前:イチロー

という結果を得ます。

【解説】

ハッシュオブジェクトの場合、「変数、変数」のように変数を二つ定義します。

これはハッシュにキーとバリューがあるからです。

処理に関しては、それぞれのキーとバリューに対して繰り返し処理が実行されます。

こちらの記事もご参考ください。

「ハッシュ」を解決してRuby初心者の壁を超えよう!

自宅で学べて安心!オンラインでエンジニア転職を実現

テックキャンプ エンジニア転職は、受講生の3人に1人がオンライン受講
◎オンライン受講の満足度は4.4/5点の高評価
まずは、ITキャリアの悩みを無料カウンセリングで相談!

まとめ

さて、いかがでしたでしょうか。

このように少しずつ噛み砕いていけば、理解していくのも容易になってくるかと思います。

for文の使い方など、プログラミング学習において大事なのは実践です

是非今日得た知識を、自分で書いたプログラムで確かめてみましょう!

 

こちらの記事もご参考ください。

【未経験者必読】10分で理解できるRuby on Railsとは

受講料最大50,000円OFF!先の見えない時代でも求められる人材「ITエンジニア」を目指すチャンス

「今の仕事は、10年後も必要とされているだろうか……」と、将来の働き方に不安を抱えていませんか?
不安定で先の見えない時代でも求められる人材になりたいなら、ITエンジニアがおすすめです。
テックキャンプなら、IT業界未経験・知識0の人でもエンジニア転職を実現できます。
今なら、9/30までの期間限定で受講料が最大50,000円OFF!
無料オンラインカウンセリングで、今すぐIT転職への不安を解消しましょう!

無料カウンセリングの予約はこちら

この記事を書いた人