侍えんじにあ 成長日記

駆け出しシステムエンジニアの学習日記です。

Rubyの繰り返し文

みなさん、初めまして、駆け出しエンジニアです。

今日は、日曜日でしたがみなさんはどのように過ごされましたか?

私は、注文していたMacBook Airが今日届き、一日の大半を初期設定とJavaなどの環境構築に費やしていました。

初めてのMacということでかなり時間を取られましたよ…

 

さて、本題はここから。

環境構築を終えた後は、昨日届いたRubyの学習書を元に、Rubyの学習を始めました。

すでにJavaなどで基本的なプログラミングの考え方は習得しているので概念などの理解は問題なく、今のところ、Javaなどでこう書いていたものを、Rubyではどのように書くのかを確認するという感じでした。

Rubyは初心者向けの言語ということで、記述がかなり楽で覚えやすそうです。

 

その中で面白いな、と思ったのが繰り返し処理の書き方です。

Rubyでは、timesメソッドを用いることで、以下のように繰り返し処理を記述できます。

f:id:biginerforgood:20180603225915p:plain

 

まずは一行目。

これはJavaを配列宣言に書き直すと、

String[] yuko = {"新木優子","優子","ゆんぴょ"}

ですね。

しかし、Rubyでは変数の型名を宣言する必要がないのでこのような記述になります。

 

つぎに3〜5行目ですが、これで繰り返し処理を定義できます。

構文としては、

 

繰り返す回数.times do

繰り返したい処理

end

 

となります。上記コードでは、文字列の出力処理が3回繰り返されることになります。

そして、3〜5行目でもう一つ機になるであろうポイントは4行目の#{"yuko[a]"}。

Rubyでは、文字列の中に変数名を記述して出力するためにはこのような記述の仕方が求められます。

 

この3〜5行目をJavaの書き方に直すと、

 

for(int i=0; i<3; i++ )

{

  System.out.print(yuko[a] + "ちゃん結婚しよう"); 

}

 

ですね。そして、上記のRubyソースコードを実行すると以下の結果になります。

 

f:id:biginerforgood:20180603225925p:plain

 

 

余談ですが、こういうどうでもいい出力をする時って、人によって何を出力させるか異なるみたいなんですよね。

僕の知ってる人だと、テニスの王子さまのキャラへの愛を叫んでいたりとか、人の悪口を書いたりする人もいて、まさに、十人十色です。

 

みなさんは、何か出力させる時のこだわりはありますか?