{category}

Ruby - イテレーションとEnumerator

cycle

サイクル(制御構造と繰り返し

意味 要素を繰り返し処理


cycleとは?

cycleは、配列やハッシュの要素を指定回数だけ繰り返し処理するメソッドです。回数を指定しない場合は無限に繰り返します。要素を何度も繰り返し使いたい場合に便利です。

cycleの具体的な使い方

配列の繰り返し処理

colors = ['赤', '青', '緑']

colors.cycle(2) do |color|
  puts "選択された色: #{color}"
end

👇出力結果

選択された色: 赤
選択された色: 青
選択された色: 緑
選択された色: 赤
選択された色: 青
選択された色: 緑

この例では、色の配列を2回繰り返し処理しています。cycleメソッドを使用することで、配列の要素を指定回数だけ繰り返し処理できます。

無限ループと条件付きブレーク

counter = 0
numbers = [1, 2, 3]

numbers.cycle do |num|
  puts "現在の数字: #{num}"
  counter += 1
  break if counter >= 5
end

👇出力結果

現在の数字: 1
現在の数字: 2
現在の数字: 3
現在の数字: 1
現在の数字: 2

この例では、cycleメソッドを引数なしで使用して無限ループを作成し、カウンターと条件文を使って5回の繰り返し後にループを抜けています。

cycleに関するよくある質問

Q. cycleメソッドの引数は何を意味する?
A. cycleメソッドの引数は繰り返し回数を指定します。例えば、cycle(2)は配列の要素を2回繰り返します。引数を省略すると、無限に繰り返します。
Q. 無限ループを避けるには?
A. cycleメソッドで無限ループを避けるには、引数に繰り返し回数を指定するか、ブロック内で条件を設けてbreakを使用します。例:count = 0; [1,2,3].cycle { |n| puts n; count += 1; break if count >= 6 }
Q. cycleと通常のeachの違いは?
A. eachは配列を1回だけ繰り返しますが、cycleは指定回数(または無限に)繰り返します。cycleは要素を何度も使いたい場合に便利です。

cycleが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Rubyのcycleやeach_with_object、else、while、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

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」カテゴリーが追加されましました!


関連するそのほかの単語

each_with_object

要素処理と結果蓄積を同時に

種類: イテレーションとEnumerator

else

条件が偽の時に実行

種類: 条件分岐

while

条件が真の間繰り返す

種類: ループ

eval

文字列をRubyコードとして実行

種類: eval関連

&

ビット単位のAND演算子

種類: 演算子