C#枚举

using System;

namespace 枚举
{
    public enum QQState
    {
        Online,
        Offline,
        Leave,
        Busy,
        Qme
    }
    public enum Genger
    {,}
    class Program
    {
        static void Main(string[] args)
        {
            #region 将枚举类型强转成int类型
            //声明一个枚举类型state
            //QQState state = QQState.Busy;
            //int n = (int)state;//3
            //Console.WriteLine((int)QQState.Busy);//3
            //Console.WriteLine((int)QQState.Qme);//4
            //Console.WriteLine(n);//3
            //Console.WriteLine(state);//Busy

            //Console.ReadKey();
            #endregion

            #region 将int类型强转为枚举类型
            //int n1 = 3;
            //int n2 = 9;

            //QQState state1 = (QQState)n1;
            //QQState state2 = (QQState)n2;
            //Console.WriteLine(state1);//Busy
            //Console.WriteLine(state2);//9
            //Console.ReadKey();
            #endregion

            //所有的类型都能转换为String类型
            #region 所有的类型都能转换为String类型
            //int n1 = 10;
            //double n2 = 3.13;
            //string s1 = n1.ToString();
            //string s2 = n2.ToString();

            //Console.WriteLine("{0},{1}", s1, s2);//10,3.13
            //Console.ReadKey();
            #endregion

            #region 将枚举类型强转为字符串类型
            //声明一个枚举变量state
            //QQState state = QQState.Online;
            //string s = state.ToString();
            //Console.WriteLine(s);//Online
            //Console.ReadKey();
            #endregion

            #region 将字符串类型转换为枚举类型
            //string s = "ABCFG";
            将s转换成枚举类型
            Convert.ToInt32()  int.parse()  int.TryParse()
            //try
            //{
            //    QQState state = (QQState)Enum.Parse(typeof(QQState), s);
            //    Console.WriteLine(state);
            //}
            //catch
            //{
            //    Console.WriteLine("转换异常");
            //}
            
            //Console.ReadKey();
            #endregion


        }
    }
}
/*
 总结:
枚举跟int类型和String类型相互转换:
当int转成一个枚举中没有的值的时候,不会抛异常,而是会直接显示出来

枚举转为String--->ToString()
如果将字符串转换成枚举类型则需要下面这样一行代码:
    (要转换的枚举类型)Enum.Parse(typeof(要转换的枚举类型),“要转换的字符串”);
如果转换的字符串是数字,就算枚举中没有,也不会抛出异常
如果转换的字符串是文本,如果枚举中没有,则会抛出异常
 */
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值