1

次の列挙子があります。

public enum Fruits
    {
        Banana = 1,
        Apple = 2,
        Blueberry = 3,
        Orange = 4
    }

そして、私がやりたいことは、次のようなものです

static void FruitType(int Type)
    {
        string MyType = Enum.GetName(Fruits, Type);
    }

基本的に、文字列 MyType に、入力した整数に対応する名前を入力したいと考えています。したがって、1 を入力すると、MyType の値は Banana になります。

例えば。FruitType(1) --> MyType = バナナ

4

2 に答える 2

7

GetNameの最初のパラメーターには型が必要です。

static void FruitType(int Type)
{
   string MyType = Enum.GetName(typeof(Fruits), Type);
}

メソッドで他に何もする予定がない場合は、次のように文字列を返すことができます

static string FruitType(int Type)
{
   return Enum.GetName(typeof(Fruits), Type);
}

string fruit = FruitType(100);
if(!String.IsNullOrEmpty(fruit))
   Console.WriteLine(fruit); 
else
   Console.WriteLine("Fruit doesn't exist");
于 2013-07-29T14:48:32.987 に答える
2

基本的に、文字列 MyType に、入力した整数に対応する名前を入力したいと考えています。

string str = ((Fruits)1).ToString();

次のようにメソッドを変更できます。

static string FruitType(int Type)
{
    if (Enum.IsDefined(typeof(Fruits), Type))
    {

        return ((Fruits)Type).ToString();
    }
    else
    {
        return "Not defined"; 
    }
}

好きな使い方

string str = FruitType(2);
于 2013-07-29T14:49:32.683 に答える