簡體   English   中英

用C#枚舉

[英]Enumeration in C#

我試圖枚舉運行時輸入以在c#中打印enum變量的值。 例如,

class Program
{
   enum Alphabets { a = 1, b, c, d, e, f, g, h }

   public static void Main(String[] args)
   {
       string s = Console.ReadLine();

       foreach(char c in s)
       {
           foreach(int i in Enum.GetValues(typeof(Alphabets)))
              Console.WriteLine(s[i]);
       }

       Console.ReadKey();
   }
}

我將用戶輸入存儲在String中。 我需要顯示用戶提供的字符串的整數值。 上面的代碼顯示了一些錯誤,如下所示: 索引錯誤! 我該如何糾正? 或請給我一個有效的代碼。

認為您需要遵循以下原則:

string line = Console.ReadLine();
foreach (char c in line)
{
    string name = c.ToString();
    Alphabets parsed = (Alphabets) Enum.Parse(typeof(Alphabets), name);
    Console.WriteLine((int) parsed);
}

因此,這會將每個字符轉換為字符串,並嘗試將其解析為Alphabets的成員。 然后,僅通過強制轉換將每個解析的值轉換為int

檢查此代碼。 這就夠了

 enum Alphabets { a = 1, b, c, d, e, f, g, h , i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z }

        public static void Main(String[] args)
        {
            string s = Console.ReadLine();

            foreach (char c in s)
            {
                Alphabets parsed = (Alphabets)Enum.Parse(typeof(Alphabets), c.ToString());
                 Console.WriteLine((int)parsed);
            }

            Console.ReadKey();
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM