アウトプットを頑張る

初めてのプログラミング学習期間中の記録と、日頃読んでいる本をメモのアウトプットをがんばります。

【プログラミング学習】Rubyの記法について〜条件分岐〜

■プログラミング学習

f:id:yuma6128:20210818071318j:plain

Rubyの条件分岐の表現方法「case文」
case文とは、条件分岐を表現するための文法です。
if文のelsifを重ねるよりもシンプルにコードを書くことができます。
並列する条件が多数ある場合は、if~elsif~elsif~・・elseと記述するよりも case文を使ったほうがコードとして読みやすくなります。
【case文の構成】

case 対象のオブジェクトや式
when1
 #値1に一致する場合に実行する処理

when2
 #値2に一致する場合に実行する処理

when3
 #値3に一致する場合に実行する処理

else 
 #どれにも一致しない場合に実行する処理


実際のコードで比較すると下記イメージです。
If 文の場合

country = "Japan"

if country == "Japan"
puts "リンゴ"

elsif  country == "America"
puts "Apple"

elsif  country == "France"
puts "Pomme"

elsif  country == "China"
puts "苹果"

elsif  country == "Italy"
puts "Mela"

elsif  country == "Germany"
puts "Apfel"

else
 puts "..."

end

case文の場合

country = "Japan"

case country
when  "Japan"
  puts "リンゴ"
when "America"
  puts "Apple"
when "France"
  puts "Pomme"
when "China"
  puts "苹果"
when "Italy"
  puts "Mela"
when "Germany"
  puts "Apfel"
else
 puts "..."
end

case countryの部分が条件の対象となります。
whenで指定した値とcountryの中身が一致するかで条件を判定しています。
if文と比べてシンプルな見た目になるため、並列する条件が多数ある場合はcase文を使う。