(二十四)C#编程基础复习——enum枚举类型

特此声明:本教程内容可能有部分参照其他博主的观点或描述,但始终不影响我学习的热情,代码全部自己手工敲打,编辑此教程目的不是为了博取大家眼球,也不是为利益所驱,只是纯属为了方便自己学习,编辑的过程中也让自己加深了对C#各个基础的印象,同时也让自己编码过程更加流畅顺利,最后还能帮助到有需要的人,代码都是自己亲测有效,如有侵权可以联系本人删除。

枚举类型(也可以成为“枚举器”)由一组具有独立标志服(名称)的整数类型常量构成,在C#枚举类型不仅可以在类或结构体的内部声明,也可以在类或结构体的外部声明,默认情况下枚举类型中成员的默认值是从0开始的,然后逐一递增。

在使用枚举时要注意以下几点:

  1. 枚举类型中不能定义方法;
  2. 枚举类型具有固定的常量集;
  3. 枚举类型可提高类型的安全性;
  4. 枚举类型可以遍历;

一、示例代码(枚举变量的使用)

namespace _015
{
    internal class Program
    {
        enum Day
        {
            Sun,Mon,Tue,Web,Thu,Fri,Sat
        };
        static void Main(string[] args)
        {
            Console.WriteLine("Sun={0}",(int)Day.Sun);
            Console.WriteLine("Mon={0}",(int)Day.Mon);
            Console.WriteLine("Tue={0}",(int)Day.Tue);
            Console.WriteLine("Web={0}",(int)Day.Web);
            Console.WriteLine("Thu={0}",(int)Day.Thu);
            Console.WriteLine("Fri={0}",(int)Day.Fri);
            Console.WriteLine("Sat={0}",(int)Day.Sat);
            Console.ReadKey();
        }
    }
}

运行结果:

二、示例代码(使用GetValues()遍历枚举类型中的所有成员)

默认情况下,枚举类型中的每个成员都为int类型,它们的值从零开始,并按定义顺序依次递增。但是我们也可以显式的为每个枚举类型的成员赋值。

namespace _015
{
    internal class Program
    {
      enum Season
        {
            winter=10,
            spring,
            summer=15,
            autumn
        };
        static void Main(string[] args)
        {
            foreach(Season i in Enum.GetValues(typeof(Season)))
            {
                Console.WriteLine("{0}={1}",i,(int)i);
            }
            Console.ReadKey();
        }
    }
}

运行结果:

三、示例代码(使用GetNames()遍历枚举类型中的所有成员)


namespace _015
{
    internal class Program
    {
        enum Season
        {
            winter=10,
            spring,
            summer=15,
            autumn
        };
        static void Main(string[] args)
        {
            foreach(string s in Enum.GetNames(typeof(Season)))
            {
                Console.WriteLine(s);
            }
            Console.ReadKey();
        }
    }
}

运行结果:

posted @   代号六零一  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示