カテゴリ: C# 更新日: 2025/07/05

C#のswitch文の使い方!初心者でもわかる複数条件の分岐処理

C#のswitch文の使い方!複数条件の分岐処理を理解しよう
C#のswitch文の使い方!複数条件の分岐処理を理解しよう

先生と生徒の会話形式で理解しよう

生徒

「C#で複数の条件によって処理を分けたいとき、どうすればいいですか?」

先生

「そのときには、switch文を使うと便利です。特に、条件がたくさんあるときにはif文より見やすく書けますよ。」

生徒

「switch文ってどうやって使うんですか?」

先生

「それでは、C#のswitch文の基本的な使い方を一緒に学んでいきましょう!」

1. switch文とは?

1. switch文とは?
1. switch文とは?

C#のswitch文は、ある変数の値に応じて実行する処理を分けたいときに使います。if文でも同じことができますが、条件が多いとコードが長くなって見づらくなります。

switch文を使えば、複数の選択肢がある場合でも整理されたコードを書くことができるので、読みやすくてミスも減らせます。

2. switch文の基本的な書き方

2. switch文の基本的な書き方
2. switch文の基本的な書き方

switch文の基本構文は以下のようになります。選択されるcaseごとに処理を分岐させて、break文でそれぞれの処理を終了させます。


int number = 2;

switch (number)
{
    case 1:
        Console.WriteLine("1が選ばれました。");
        break;
    case 2:
        Console.WriteLine("2が選ばれました。");
        break;
    case 3:
        Console.WriteLine("3が選ばれました。");
        break;
    default:
        Console.WriteLine("1〜3以外の数字です。");
        break;
}

実行結果:


2が選ばれました。

この例では、変数numberが2なので、「2が選ばれました。」と表示されます。

3. break文とは?

3. break文とは?
3. break文とは?

breakは、「このcaseの処理はここで終わりです」と示す命令です。もしbreakを書かなければ、その下のcaseも続けて実行されてしまうので注意が必要です。

この現象を「フォールスルー(fall-through)」と呼びます。C#では、caseの中でbreakか他の終了文を書かないとエラーになります。

4. defaultとは?

4. defaultとは?
4. defaultとは?

defaultは、どのcaseにも当てはまらないときに実行される部分です。else文のような役割ですね。

必ずしも書く必要はありませんが、予期しない値への対応やエラー処理をしたい場合に書くのがおすすめです。

5. 文字や文字列でもswitch文を使える

5. 文字や文字列でもswitch文を使える
5. 文字や文字列でもswitch文を使える

switch文intのような数字だけでなく、char(1文字)やstring(文字列)でも使えます。


string fruit = "りんご";

switch (fruit)
{
    case "りんご":
        Console.WriteLine("赤い果物ですね。");
        break;
    case "みかん":
        Console.WriteLine("オレンジ色の果物ですね。");
        break;
    default:
        Console.WriteLine("知らない果物です。");
        break;
}

実行結果:


赤い果物ですね。

6. 複数のcaseをまとめて処理する方法

6. 複数のcaseをまとめて処理する方法
6. 複数のcaseをまとめて処理する方法

同じ処理を複数のcaseにまとめたいときは、caseを連続して書くことで対応できます。


int day = 6;

switch (day)
{
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
        Console.WriteLine("平日です。");
        break;
    case 6:
    case 7:
        Console.WriteLine("週末です。");
        break;
    default:
        Console.WriteLine("1〜7の範囲で指定してください。");
        break;
}

実行結果:


週末です。

このように、同じ結果を出したい場合に便利な書き方です。

7. switch文を使うときの注意点

7. switch文を使うときの注意点
7. switch文を使うときの注意点
  • caseの最後にはbreakを忘れずに書きましょう。
  • switchに指定できるのは、intcharstringなどの基本的な値です。
  • 比較対象は完全一致になります(例:「りんご」≠「リンゴ」)。

8. if文との違いを知っておこう

8. if文との違いを知っておこう
8. if文との違いを知っておこう

if文は範囲や不等号(たとえば「10より大きい」)など柔軟な条件に対応できますが、switch文は値の一致だけが対象です。

条件が複雑なときはif文、選択肢が明確なときはswitch文を使うのがポイントです。

カテゴリの一覧へ
新着記事
COBOLの変数名の付け方を解説!初心者でもわかる命名規則とコツ
C#のbreakとcontinueの使い方!ループ制御の基本テクニック
COBOLのFILLERの使い方とは?未使用領域を上手に管理する基本テクニック
C#のforeach文の基本!配列やコレクションを簡単に繰り返し処理する方法
人気記事
No.1
Java&Spring記事人気No1
C#のwhile文の使い方!条件付きループを基礎から学ぼう
No.2
Java&Spring記事人気No2
COBOLのDISPLAY文の使い方を完全ガイド!初心者でもわかる出力方法
No.3
Java&Spring記事人気No3
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方
No.4
Java&Spring記事人気No4
COBOLのINDEXED BY句を使ったインデックス管理の基本をやさしく解説!