#条件分岐について
条件分岐とは、自分が設定した条件について、値が当てはまっているか(真)そうでないか(偽)を判断し、その結果に応じた出力を呼び出すことができる方法のことです。
使用することが多いので、Rubyの勉強を始めたばかりの方はぜひ読んでみてくださいね!
【内容】
・基本となるifの使い方
・ifを一行でまとめる方法
・条件が複数ある時のifの使い方
【読んで欲しい人】
・条件分岐(if)をマスターしたい方
・Ruby初学者の方
##ifの使い方
ifを用いた条件式について解説します。ある特定の条件があり、その条件に当てはまる場合と当てはまらない場合で出力を変更したいときに使用します。
###基本となるifの使い方
if 条件式
条件式に該当する(真)ときの出力
else(条件式以外の場合)
条件式に該当しない(偽)であるときの出力
end
実際に例文でも見てみましょう。
age = 21
if age >= 20
puts "私は成人です。"
else
puts "私は未成年です。"
end
私は成人です。
このように、age = 21
と定義されているので、ifの条件式に対しては(真)となり、「私は成人です」という値が返ってきます。もしage = 18
など、ageの値が20未満であれば、条件式に対して(偽)となるので、「私は未成年です」という値が返ってくることになります。
###ifを一行でまとめる方法
実はこのif文をもう少しスマートに記載することができます。
age = 12
puts age >= 20 ? "私は成人です。" : "私は未成年です。"
私は未成年です。
このように、三項演算子という手法を使えば、一行でコードを記載することもできます。
条件式? (真)の値 : (偽)の値
と記載することで、スマートに一行でまとめることができます。条件式の後に「?」を入れるのを忘れないようにしてくださいね。慣れてきたらこのように式を簡単にしてコードを書いてみましょう!
###条件が複数ある時のifの使い方
では、複数の条件式を使用したい場合はどのようにコードを書けば良いのでしょうか?
基本は下記のような書き方になります。
if 条件式①
条件式①に該当する(真)ときの出力
elsif 条件式②
条件式②に該当する(真)ときの出力
elsif 条件式③
条件式③に該当する(真)ときの出力
else
どの条件式にも該当しない(偽)ときの出力
end
実際に例文でも見てみましょう。
hobby = "basketball"
if hobby == "baseball"
puts "私は野球が趣味です。"
elsif hobby == "soccer"
puts "私はサッカーが趣味です。"
elsif hobby == "basketball"
puts "私はバスケットボールが趣味です。"
else
puts "私は無趣味です。"
end
私はバスケットボールが趣味です。
このように、例文2では、hobby = "basketball"
と定義されているので、3つ目の条件式hobby == "basketball"
に当てはまることがわかります。複数の条件式が必要な場合は、上記のようにelsif
で条件式を追加しましょう!くれぐれもelseif
と書かないように注意してくださいね。
今回はifの使い方について解説しました。本当は他の条件分岐についても書こうと思ったのですが、あまりにも内容が長くなってしまい、必要な情報を見落としてしまう可能性があるので、別の記事で解説しようと思います!
条件分岐は使用頻度が多いので、ぜひマスターしましょう!