C# 演習

C#のパターンマッチングでデータを分類する

このレッスンでは、型パターン、比較パターン、プロパティパターンを使って、いろいろな型の値を分類します。

はじめに

パターンマッチングを使うと、型のチェック、値のチェック、データの取り出しを1つの式の中で組み合わせられます。この練習では、どんな値でも受け取って、ふさわしい説明を返す分類用の関数を作ります。

パターンint and >= 18は、18以上の整数に一致します。パターンstring { Length: 0 }は、値が本当に文字列であることを確かめたうえで、空の文字列に一致します。パターンstring textは残りのすべての文字列に一致し、値を変数textに取り出します。"CSharp"は6文字なので、結果はtext(6)です。

実行できる C# の例

C#
コードを実行 →
Program.cs
using System;
class Program
{
    static string Classify(object? value) => value switch
    {
        int and >= 18 => "adult age", string { Length: 0 } => "empty text",
        string text => $"text({text.Length})", null => "null", _ => "other"
    };
    static void Main() => Console.WriteLine(Classify("CSharp"));
}
実行結果
text(6)

デバッガーで練習する

大事な代入や条件にブレークポイントを置いて Debug を押し、次の行に進む前にローカル変数の値を確かめましょう。

チャレンジで練習する

このレッスンの内容を使って実際の問題を解きましょう。各チャレンジはブラウザで動き、すぐにテストされ、AI のレビューも受けられます。

すべてのチャレンジ