1. ホーム
  2. c#

[解決済み] C#のenum内部のメソッド

2022-04-19 23:16:11

質問

Javaでは、enumの中にメソッドを持つことができます。

C#ではそのような可能性はあるのでしょうか?それとも文字列のコレクションで終わりなのでしょうか?

をオーバーライドしてみました。 ToString() が、コンパイルできません。どなたか簡単なコードサンプルをお持ちではないでしょうか?

どのように解決するのですか?

以下のように記述します。 拡張メソッド enum 型のためのものです。

enum Stuff
{
    Thing1,
    Thing2
}

static class StuffMethods
{

    public static String GetString(this Stuff s1)
    {
        switch (s1)
        {
            case Stuff.Thing1:
                return "Yeah!";
            case Stuff.Thing2:
                return "Okay!";
            default:
                return "What?!";
        }
    }
}

class Program
{


    static void Main(string[] args)
    {
        Stuff thing = Stuff.Thing1;
        String str = thing.GetString();
    }
}