条件分岐と繰り返し処理について
お疲れ様です。
今日はrubyについて少しまた学びましたのでそちらのアウトプットをしていこうかと思います。
まず条件分岐について今まではif文やunless文を使って条件式を成立させていましたが今回はcase文を学びました。
case文も条件式ですがif文などと比べるとかなり記述がスマートになりました!
if文ではelsifに続いて条件式を記述しますがcase文では例を出すと
country = "japan"
case country
when "japan"
puts "こんにちは"
when "america"
puts "hello"
else
puts "..."
end
という形でcase countryの部分が条件の対象となり、whenで指定した値とcountryの中身が一致するかで条件を判定します。
実際にコードを書いてみるとかなり記述がシンプルになりました。
並列する条件が多数ある時に使用するんだなー程度で覚えておこうかと思います。
次が繰り返し処理です。
今まではtimesメソッドやeach文を使って繰り返し処理を行っていました。今回はwhile文を学びました。
今まではある回数繰り返し処理をしたり、配列内の値の数だけ処理をしていましたがっ今回は指定した条件式がtrueであれば永遠に繰り返し処理を行うというものです。
下記にコードの例を載せます。
while 条件式
条件式がtrueの時に繰り返す処理
end
といった形です。
つまり条件式がtrueであれば先程説明した通り永遠に繰り返し処理を行います。
ここで大事なのが無限ループです。
無限ループを起こしてしまうとコンピューターに大きな負荷がかかってしまうので、繰り返し処理を実装する場合は、特に注意が必要だなと思いました!
実際に無限ループを回避する方法としてはbreakを記述します。
each文やwhile文などの繰り返し処理の中に記述していきます。
書き方としては繰り返し処理の中にif文を用います。
条件式である値などになったら、つまり条件式がtrueの時の処理としてbreakを記述するだけでその繰り返し処理から抜け出すことができます。
今日は色々とやることがありあまり学習できなかったので明日は学習もしつつ転職活動にも力を入れていきたいと思います。
ではまた!