0Pricing
C# Academy · レッスン

Switch文

switch文で複雑な条件分岐を簡潔にします

「Switch文」はCoddyKit上の無料C# Academyレッスンです。 これはレッスン3/5です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはC# Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 C# Academyコースには全5レッスンが含まれています。

switch文の概要

switch文

次のレッスンへようこそ!このレッスンでは、C#プログラムでswitch文を使って複雑な条件分岐ロジックを簡潔にする方法を学びます。それでは始めましょう!

Switch文 — イラスト1

switch文とは何ですか

switch文とは何ですか

switch文を使うと、変数を複数のケースと照合し、ケースに応じて特定のコードを実行できます。複数のif-else文を使うよりも、すっきりと記述できる方法です。

重要なポイント:1つの変数を複数の値と比較する必要がある場合は、switch文を使用してください。

switch文の構文

switch文の構文

switch文の基本的な構文は次のとおりです:

switch (variable) {

case value1:

// code;

break;

case value2:

// code;

break;

default: // code; }

例:

using System;

class Program {
    static void Main() {
        string day = "Monday";

        switch (day) {
            case "Monday":
                Console.WriteLine("Start of the work week!");
                break;
            case "Friday":
                Console.WriteLine("Last workday of the week!");
                break;
            default:
                Console.WriteLine("Midweek day.");
                break;
        }
    }
}

defaultケース

defaultケース

defaultケースは、他のどのケースにも一致しない場合に実行されます。if-else文のelseブロックに似ています。

例:

重要なポイント:予期しない値に対応できるよう、必ずdefaultケースを含めてください。

using System;

class Program {
    static void Main() {
        int number = 10;

        switch (number) {
            case 1:
                Console.WriteLine("Number is one.");
                break;
            case 2:
                Console.WriteLine("Number is two.");
                break;
            default:
                Console.WriteLine("Number is neither one nor two.");
                break;
        }
    }
}

複数のケースを持つswitch文

複数のケースを持つswitch文

複数のケースをまとめて、同じコードブロックを実行できます。例:

ヒント:ケースをまとめると、コードの重複を避けられます。

using System;

class Program {
    static void Main() {
        char grade = 'B';

        switch (grade) {
            case 'A':
            case 'B':
                Console.WriteLine("Good job!");
                break;
            case 'C':
                Console.WriteLine("You passed.");
                break;
            default:
                Console.WriteLine("Invalid grade.");
                break;
        }
    }
}

整数範囲でswitch文を使う

整数範囲でswitch文を使う

C#のswitch文は範囲を直接サポートしていませんが、switchと他のロジックを組み合わせることで、範囲に基づく条件を実装できます。例:

重要なポイント:ケースに条件を追加するには、whenを使用してください。

using System;

class Program {
    static void Main() {
        int age = 25;

        switch (age) {
            case int n when (n >= 0 && n <= 12):
                Console.WriteLine("Child");
                break;
            case int n when (n >= 13 && n <= 19):
                Console.WriteLine("Teenager");
                break;
            case int n when (n >= 20):
                Console.WriteLine("Adult");
                break;
            default:
                Console.WriteLine("Invalid age.");
                break;
        }
    }
}

switch文を使う場面

switch文を使う場面

switch文は、次のような場合に特に役立ちます:

  • 1つの変数を複数の値と比較する必要がある場合
  • 変数の値が離散値(数値、文字列、文字など)である場合
  • 複数のif-else文に代わる、すっきりして読みやすい方法が必要な場合

ヒント:条件が多く複雑なロジックには、switch文の使用を避けてください。

練習課題

練習課題

ユーザーに1~7の数字を入力してもらい、対応する曜日を表示するプログラムを書いてください。例:

using System;

class Program {
    static void Main() {
        Console.WriteLine("Enter a number (1-7):");
        int day = int.Parse(Console.ReadLine());

        switch (day) {
            case 1:
                Console.WriteLine("Monday");
                break;
            case 2:
                Console.WriteLine("Tuesday");
                break;
            case 3:
                Console.WriteLine("Wednesday");
                break;
            case 4:
                Console.WriteLine("Thursday");
                break;
            case 5:
                Console.WriteLine("Friday");
                break;
            case 6:
                Console.WriteLine("Saturday");
                break;
            case 7:
                Console.WriteLine("Sunday");
                break;
            default:
                Console.WriteLine("Invalid input. Enter a number between 1 and 7.");
                break;
        }
    }
}

よくできました!

よくできました!

おめでとうございます!C#でswitch文を使って条件分岐ロジックを簡潔にする方法を学びました。次のレッスンでは、配列について学び、データのコレクションを効率的に管理する方法を身につけます。引き続きコーディングに取り組みましょう!

Switch文 — イラスト10

よくある質問

「Switch文」レッスンは無料ですか?

はい。「Switch文」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、C# Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 C# Academyコースには全5レッスンが含まれています。

「Switch文」で何を学びますか?

switch文で複雑な条件分岐を簡潔にします ブラウザで直接実行するハンズオンコードでC# Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

C# Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのC# Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/5です。

「Switch文」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このC# Academyレッスンでコードを書いて実行できますか?

はい。すべてのC# Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 制御フロー:If-Else文
  2. C#のループ:For、While、Do-While
  3. Switch文
  4. 配列入門
  5. 文字列を扱う
← C# Academyに戻る