1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【C#】if と switch どっちを使うべき?

Posted at

if文とは?

if 文は条件式を評価して、true/false で処理を分けるシンプルな方法です。

if (score >= 80)
{
    Console.WriteLine("合格!");
}
else if (score >= 50)
{
    Console.WriteLine("もう一歩!");
}
else
{
    Console.WriteLine("不合格…");
}
  • 複雑な条件(&&, || など)に強い
  • 範囲チェックに便利

柔軟だけど、分岐が多すぎるとコードが読みにくくなるのが欠点です。

switch文とは?

switch 文は、特定の値に応じて処理を分けるときに便利です。

switch (dayOfWeek)
{
    case "月曜日":
        Console.WriteLine("週の始まり!");
        break;
    case "金曜日":
        Console.WriteLine("やっと週末!");
        break;
    default:
        Console.WriteLine("普通の日");
        break;
}
  • 値の一致チェックに特化
  • 分岐が多くてもスッキリ書ける
  • C# 8.0 以降は switch式 が使えて、さらに読みやすい

数値や文字列の固定パターン分岐に強いけど、範囲条件には弱いです。

使い分けの目安

こんなとき おすすめ
条件が複雑(範囲チェック、複合条件など) if
値ごとに分岐(列挙型、定数、固定パターン) switch
分岐が2〜3個程度 ifでもswitchでもOK(読みやすい方を選ぶ)
分岐が多い(5個以上など) switch の方が見やすい

まとめ

  • if文 → 柔軟・範囲や複雑な条件に強い
  • switch文 → 値ごとの分岐に強く、見やすい

迷ったら「読みやすい方を選ぶ」が一番です。
チーム開発なら「他の人が理解しやすいか」を基準に選びましょう!

1
0
0

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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?