each
イーチ(制御構造と繰り返し)
意味 配列やハッシュの要素を順に処理
eachとは?
eachは、配列やハッシュなどの集合オブジェクトの各要素に対して、順番に処理を行うためのメソッドです。eachを使うと、コレクション内の各要素に対して同じ操作を簡単に適用できます。
eachの具体的な使い方
配列の要素を処理する例
fruits = ['apple', 'banana', 'orange', 'grape', 'melon']
puts "フルーツリスト:"
fruits.each_with_index do |fruit, index|
puts "#{index + 1}. #{fruit.capitalize}"
end
total = fruits.length
puts "リストの合計: #{total}個のフルーツ"
👇出力結果
フルーツリスト:
1. Apple
2. Banana
3. Orange
4. Grape
5. Melon
リストの合計: 5個のフルーツ
この例では、fruits配列の各要素(フルーツの名前)に対して、インデックス付きでリスト形式で出力します。each_with_indexメソッドを使用して、要素とそのインデックスの両方を取得しています。また、capitalizeメソッドで各フルーツ名の先頭を大文字にしています。
ハッシュの要素を処理する例
student_scores = {
Alice: 85,
Bob: 92,
Charlie: 78,
David: 95,
Eve: 88
}
puts "生徒の成績:"
student_scores.each do |name, score|
grade = case score
when 90..100 then 'A'
when 80...90 then 'B'
when 70...80 then 'C'
else 'D'
end
puts "#{name}: #{score}点 (成績: #{grade})"
end
average = student_scores.values.sum / student_scores.length
puts "クラスの平均点: #{average.round(2)}点"
👇出力結果
生徒の成績:
Alice: 85点 (成績: B)
Bob: 92点 (成績: A)
Charlie: 78点 (成績: C)
David: 95点 (成績: A)
Eve: 88点 (成績: B)
クラスの平均点: 87.6点
この例では、student_scoresハッシュの各要素(生徒名と点数のペア)に対して、点数に応じた成績を計算し、生徒名、点数、成績を出力します。また、クラス全体の平均点も計算して表示します。
eachに関するよくある質問
eachが学べる書籍の紹介
「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Rubyのeachやcycle、unless、when、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。
よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。
HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。
Rubyを学べる「プログラミング単語帳」アプリ
プログラミング単語帳がアプリになりました!Rubyはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。
収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。
いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。
2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!
2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!