1. 程式人生 > >如何把一個輸入字串轉換成列舉型別

如何把一個輸入字串轉換成列舉型別

今天學習了列舉型別,記錄如下

列舉的作用

1)限制使用者不能隨意賦值,只能在定義列舉時列舉的值中選擇

2)無需記住每個值是什麼,只需要.選擇相應的值

注意:

定義列舉時,值不能是int型別

列舉型別的變數都可以強制轉換成一個int型別

列舉的值在定義是是有一個預設編號的,編號從0開始

如果把一個字串轉換成列舉型別:(自定義的列舉型別)(Enum.Parse(type0f(自定義的列舉型別), "待轉換的字串");

例子:請使用者輸入性別,如果輸入男,則輸出使用者性別為男性,使用列舉

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Enum_String
{
    enum Gender
    {
        男,
        女
    }
    class Program
    {
        static void Main(string[] args)
        {
            string inputGender = "";
            Gender userGender;
            Console.WriteLine("請輸入您的性別");
            inputGender = Console.ReadLine();
            try
            {
                //將輸入的字串轉換成列舉型別
                userGender = (Gender)(Enum.Parse(typeof(Gender),inputGender));
                //列舉型別userGender由於前面是字串,所以會自動呼叫tostring()方法
                //Console.WriteLine("您的性別是"+userGender.ToString());
                Console.WriteLine("您的性別是"+userGender);
            }
            catch
            {
                Console.WriteLine("您只能輸入男或女,請重新輸入");
            }
            Console.ReadKey();
        }
    }
}