##環境
Ruby 3.0.2
Rails 6.1.4.1
##case whenとは
thenは省略可
weather.rb
weather = 0
case weather
when 0 then
puts '晴れ'
when 1 then
puts 'くもり'
when 2 then
puts '雨'
else
puts '雪'
end
#=> 晴れ
putsを省略するとより可読性が上がり、コード量も減らせる
weather.rb
weather = 0
case weather
when 0 then '晴れ'
when 1 then 'くもり'
when 2 then '雨'
else '雪'
end
#=> 晴れ
case文をif文で書き直すとこんな感じ
===
は、左辺が単独のStringやIntegerオブジェクトの場合==
と同じ動作をする
weather.rb
weather = 0
if weather === 0 then
puts '晴れ'
elsif weather === 1 then
puts 'くもり'
elsif weather === 2 then
puts '雨'
else
puts '雪'
end
#=> 晴れ
##case文とif文の使い分け
case文:1つの比較対象に対して複数の条件分岐でき、可読性の高いコードを書ける
if文:複数の比較対象を組み合わせて条件分岐できる
##参考