繰り返し処理でよく使う!Rubyでbreakを使う方法【初心者向け】

Rubyで使うbreakの書き方を初心者でも分かるように解説しています。プログラムの中で繰り返し処理(ループ処理)を行うことがあるでしょう。実際に反映させなくともちょっとテストしたいという時にでも繰り返し処理は便利なメソッドです。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

今回は、Rubyで書くbreakの使い方について解説していきます。

プログラムの中で繰り返し処理(ループ処理)を行うことがあるでしょう。実際に反映させなくともちょっとテストしたいという時にでも繰り返し処理は便利なメソッドです。

breakを使うことで繰り返し処理の終了タイミングを宣言することができるのです。一部だけをループさせたい時などに便利です。

そもそもRubyがよく分からないという方は、Rubyとは何なのか解説した記事をご覧ください。

 

なお本記事は、TechAcademyのWebアプリケーションオンラインブートキャンプの内容をもとに紹介しています。

 

田島悠介

今回はbreakの使い方を勉強するよ。

大石ゆかり

田島メンター!!breakというのは何をするときに使うんですか~?

田島悠介

breakは繰り返し処理の中で使用するんだ。ある特定の条件になったら、条件式の内容に関わらずそこでループを止めることができるんだよ。

大石ゆかり

そんなものもあるんですね。やってみたいです!

 

breakとは

breakは、繰り返し処理を途中で終了させたい時に使います。

繰り返し処理は具体的に言うと、

  • for文
  • while文
  • until文
  • イテレータ(each,timeなど)

です。

 

実際に書いてみよう

for文の場合

まずは、1から10まで表示させる繰り返し処理をfor文を用いて書いてみましょう。

今回は、printを利用して数字の表示を行っています。

for num in 1..10
  print(num,"\n")
end

このようなプログラムを書くことができると思います。

スクリーンショット 2016-03-24 12.11.33

結果も1から10までの処理が行われているのが分かります。

 

大石ゆかり

1から10までの数値を順番に出力していく……for文でやった書き方ですね。

田島悠介

そうだね。これをbreakを使うことによって途中で止めるんだ。次の例を見てみよう。

大石ゆかり

はい!

 

for文でif文を利用した場合

次に、breakを使ってnumが7になった時点でプログラムを終了させます。

for num in 1..10
  print(num,"\n")
    if num == 7 then
      break
    end
end

このように書くとnumが7が表示された後、プログラムを終了させることができます。

スクリーンショット 2016-03-24 12.12.31

breakを使うことによって、プログラムを自分が終了させたいタイミングで終わらせることができます。

今回挙げた例の条件を変えればもちろん終了する数字も変わってきます。

breakを使えるようになったら便利ですので、いろいろな繰り返し文のなかで使ってみてください。

 

田島悠介

ifを使って、特定の条件になったらbreakさせるようにするんだ。

大石ゆかり

この場合、numの値が7になったらということですね。

田島悠介

本来10まで出力されるのが、breakによって7までになっているのが分かるね。このように繰り返し処理にさらに条件をつけることができるんだ。ぜひ利用してみよう。

大石ゆかり

分かりました。for文以外でどのように実装されるかも興味ありますね!

 

while文の場合

次にwhile文を利用した例を説明します。

次のコードでは、1から10までが表示されます。

プログラム

num = 0
begin
  num += 1
  puts num
end while num < 10

表示

解説

最初に変数numに0を代入して、初期化しています。

beginからはじまりend whileまでが、while文を意味します。

今回は、num < 10 が示すように、numが10より小さい間ループさせます。

num += 1では、numに1を足します。

そして、今回はputsを利用して数字の表示を行っています。

 

while文でif文を利用した場合

次に、breakを使ってnumが7になった時点でプログラムを終了させます。

プログラム

num = 0
begin
  num += 1
  puts num
  if num == 7 then
    break
  end
end while num < 10

表示

解説

先ほどと異なる点は、if文とbreakです。

if num == 7 thenでは、numが7であった場合の処理を条件分岐させています。

numが7だった場合は、breakします。

結果的に、puts numで数字が7まで表示された時点で処理が終了します。

 

[お知らせ]TechAcademyでは初心者でも8週間でエンジニアになれるRuby on Railsオンラインブートキャンプを開催しています。RubyでWebアプリを開発したい方はご参加ください。

この記事を監修してくれた方

中本賢吾(なかもとけんご)
アジマッチ有限会社 代表取締役社長

開発実績:PHPフレームワークを利用した会員制SNS・ネットショップ構築、AWSや専用サーバー下でLinuxを使用したセキュアな環境構築、人工知能を利用したシステム開発、店舗検索スマホアプリ開発など。

その他にも地域の職業プログラマー育成活動を行い、2018年には小学生がUnityで開発したオリジナルAndroidアプリをGooglePlayでリリース。ゲームで遊ぶより作ろうぜ!を合言葉に、小学生でも起業できる技術力を育成可能で有ることを証明し続けている。