LoginSignup
0
0

More than 1 year has passed since last update.

制御構造 - 条件分岐 case..when

Last updated at Posted at 2021-06-08

case..when文について

コーディングテスト対策をする上で、多くの場合if文による冗長なアルゴリズムが作成されていた為、その対応策の一つとして、case..when構文に関して、再度学習した。その内容をここに記録する。
結論として、if文と役割はそこまで変わらないが、自分なりの利点にあげる。

  1. 可読性が上がる
  2. 変数を扱う場合はスタイリッシュになる。

ここから下は公文の説明になります。コードについては、コーディングテストの内容をそのままにしてあります。

制御構造 - 条件分岐 case..when文

if文の場合

if score >= 80
    array << "A\n"
elsif score >= 70 && score < 80
    array << "B\n"
elsif score >= 60 && score < 70
    array << "C\n"
elsif score < 60
    array << "D\n"
end

case..when文の場合

case score
when 80..100
    array << "A\n"
when 70..79
    array << "B\n"
when 60..69
    array << "C\n"
when 0..59
    array << "D\n"
end

最後のcase分では、同一の変数を扱っている利点を活かし、条件式において変数を省略できるという利点を持つ。この点がif文と比較し、優位にあると考えています。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0