首页 > 编程语言 >(二十五)C#编程基础复习——enum枚举类型

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

时间:2023-11-27 09:48:46浏览次数:35  
标签:Console C# enum int 枚举 WriteLine 类型 Day

枚举类型(也可以成为“枚举器”)由一组具有独立标志服(名称)的整数类型常量构成,在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();
        }
    }
}

运行结果:

标签:Console,C#,enum,int,枚举,WriteLine,类型,Day
From: https://www.cnblogs.com/daihaoliulingyi601/p/17858406.html

相关文章

  • buuctf-misc
    1.打开为png格式图片将他扫一扫发现密码就在这直接上虚拟机binwalk分离图片得到一个zip文件,但是需要密码才能打开话不多说直接把他拖到桌面上用archer对其进行爆破得到密码打开即可得到flag2. ......
  • Java Calendar日历类型常见方法
    #1.获取日期和时间:-`get(intfield)`:获取指定字段的值,如`Calendar.YEAR`获取年份,`Calendar.MONTH`获取月份等。-`getTime()`:获取日期对象对应的Date类型。#2.设置日期和时间:-`set(intfield,intvalue)`:设置指定字段的值,如`Calendar.YEAR`设置年份,`Calendar.MONTH`设置......
  • 如何在langchain中对大模型的输出进行格式化
    简介我们知道在大语言模型中,不管模型的能力有多强大,他的输入和输出基本上都是文本格式的,文本格式的输入输出虽然对人来说非常的友好,但是如果我们想要进行一些结构化处理的话还是会有一点点的不方便。不用担心,langchain已经为我们想到了这个问题,并且提出了完满的解决方案。lan......
  • webrtc常用api
    WebRTC(WebReal-TimeCommunication)是用于在Web浏览器中实现实时通信的技术和API集合。以下是一些常用的WebRTCAPI:getUserMedia():用于从设备(如摄像头和麦克风)获取音视频流。它允许用户授予网页访问其设备的权限,并返回一个MediaStream对象,其中包含了音视频轨道。RTCPeerCo......
  • cocos creator中的MVC设计模式
    MVC模式非常得火,今天小编就来说说Unity或cocoscreator这类可视化+组件化开发的工具怎么来做MVC。MVC中的M指的是Model,V指的是视图,C指的是控制,接下来我们通过view,Ctrl,Model依次来说明我们基于unity/cocoscreator这类工具的MVC的开发框架中通常是怎么处理的。v......
  • PCL基础
    读取点云文件stringlane_cluster_path="demo.pcd";pcl::PointCloud<pcl::PointXYZRGB>::Ptrcloud(newpcl::PointCloud<pcl::PointXYZRGB>());if(pcl::io::loadPCDFile(lane_cluster_path,*cloud)==-1){ cout<<"loadlane_clusterpcder......
  • 前端开发-vscode必备插件
    1.AutoCloseTag自动闭合html标签2.AutoImport自动引入3.AutoRenameTag自动重命名4.AutoScssStruct4Vue根据vue文件的模板template结构,自动生成对应的scss文件 5.CodeSnap代码生成图片6.codeTour代码向导,适合调......
  • break和continue
    break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句(break语句也在switch语句中使用)continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定......
  • socket.on可以直接添加自定义事件吗,理解socket的事件触发与响应
    在Web开发中,socket.on通常是用于注册处理特定事件的回调函数的方法。它主要用于处理Socket.IO库中的预定义事件,例如"connect"、"disconnect"、"message"等。然而,Socket.IO也允许你添加自定义事件,以便在客户端和服务器之间进行自定义的双向通信。要使用socket.on来处理自定义事件,......
  • Oracle 数据库存储过程调用SpringBoot API 接口方法
    数据库存储过程代码CREATEORREPLACEPROCEDUREFSMT.P_GET_HTTP_RES/*描述:存儲過程掉用HTTP接口作者:Janus日期:2023-11-23*/(M_DOC_NOINVARCHAR2,--??M_DOC_TYPEINVARCHAR2,--?据?型M_STANDBYINVARCHAR2,--?用字段M_EM......