📘

Ruby 条件分岐

2023/03/16に公開

if式とは

条件や状況に応じて実行内容を変えたい場合に使用。
条件式の返り値が真か偽かに応じて処理を分岐させることができ、
返り値が真の場合はif~endまでの処理が行われる。

if 条件式
  処理  # もし条件式の返り値が真だった場合に実行される
end

条件式

if式などの条件に記述する式のこと。
式とは評価される値が定まり、その値が返されるもの。

真偽値

falseとnilは偽、それ以外の値は真であり、
このような真と偽の値を総称して真偽値という。
真偽値とtrue, falseは必ずしもイコールではない。

比較演算子

比較演算子は、値を比較して判定する際に使用。
数値の大小を比較する演算子は「< 」「<=」 「>」「>=」の4種類がある。
数値や文字列が同じかどうかを比較する演算子は「==」 「!=」の2種類がある。

<   # 右辺の方が大きい
<=  # 右辺の方が大きい、または等しい
>   # 左辺の方が大きい
>=  # 左辺の方が大きい、または等しい
==  # 右辺と左辺が等しい
!=  # 右辺と左辺が等しくないとき

論理演算子

「論理演算子」は、2つ以上の条件を判定する際に使用。
「!」「&&」「||」の3種類がある。
複数の条件式をつなげる場合、カッコを用いて区切りをわかりやすくすることが大切。

!   # 否定
&&  # どちらの条件も正しければtrue
||  # どちらかの条件が正しければtrue

elsif、else

elseはifの条件に当てはまらなかった場合の処理を設定。

if 条件式
  処理1  # 条件式の返り値が真だったら処理1を行う
else
  処理2  # 条件式の返り値が偽だったら処理2を行う
end

elsifを使うことで条件・処理を追加することが可能。
elsifはいくつでも追加可能。

if 条件式1
  処理1  # 条件式1の返り値が真だったら処理1を行う
elsif 条件式2
  処理2  # 条件式1の返り値が偽、かつ条件式2の返り値が真だったら処理2を行う
elsif 条件式3
  処理3  # 条件式1と条件式2の返り値が偽、かつ条件式3の返り値が真だったら処理3を行う
# ...(中略)...
elsif 条件式n
  処理n  # 条件式1~条件式n-1の返り値が全て偽、かつ条件式nの返り値が真だったら処理nを行う
else
  処理x  # 条件式1~条件式nの返り値が全て偽だったら処理xを行う
end

残業続きだけど毎日時間捻出して勉強してやっとruby突入!
まだやったとこの振り返りだからわかるところはサクサク進めていこう

Discussion