京东云服务器推荐配置、多种配置选择,满足不同业务需求!

热门推荐

⭐ 稳定入门选择

配置:2核2G/5M

适用场景:个人站点 / 轻量应用

特点:性价比高,稳定可靠

¥19/月
立即购买
流量友好

☁️ 轻量云主机

配置:2核4G 5M

适用场景:小型业务 / 博客 / 测试环境

特点:流量友好,性能均衡

¥149/年
立即购买
高性能

💻 云服务主机

配置:4核16G 8M

适用场景:中小型服务 / 多并发场景

特点:充足内存与带宽,性能强劲

¥750/年
立即购买
新人专享

🎁 新人福利

新人访问 → 点击 → 最新活动

可获取 3000元 礼券

立即领取
服务端 / C# 教程 / C# 菜鸟教程
C# 枚举(Enum)
C# FileInfoC# 结构体(Struct)

C# 枚举(Enum)

在C#中,enum( 枚举类型)用于将常量名称分配给一组数字整数值。它使常量值更易读,例如,WeekDays.Monday在引用一周中的某天时,其可读性比数字0 更易读。

枚举是直接在命名空间、类或结构中使用 enum 关键字定义的。所有常量名都可以在大括号内声明,并用逗号分隔。下面定义了工作日的枚举。

enum WeekDays
{
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday,
    Sunday
}

上面,WeekDays枚举在每行中声明成员,每行用逗号分隔。

枚举值

如果未将值分配给枚举成员,则编译器将在默认情况下为每个成员分配整数值(从零开始)。枚举的第一个成员将为0,并且每个连续枚举成员的值将增加1。

enum WeekDays
{
    Monday,     // 0
    Tuesday,    // 1
    Wednesday,  // 2
    Thursday,   // 3
    Friday,     // 4
    Saturday,   // 5
    Sunday      // 6
}

可以为枚举成员分配不同的值。枚举成员的默认值的更改将自动按顺序向其他成员分配增量值。

enum Categories
{
    Electronics,    // 0
    Food,           // 1
    Automotive = 6, // 6
    Arts,           // 7
    BeautyCare,     // 8
    Fashion         // 9
}

您甚至可以为每个成员分配不同的值。

enum Categories
{
    Electronics = 1,  
    Food = 5, 
    Automotive = 6, 
    Arts = 10, 
    BeautyCare = 11, 
    Fashion = 15,
    WomanFashion = 15
}

枚举可以是任何数字数据类型,例如 byte,sbyte,short,ushort,int,uint,long 或 ulong。但是,枚举不能为字符串类型。

在 enum 名称后指定类型为:type。下面定义了字节 enum。

enum Categories: byte
{
    Electronics = 1,  
    Food = 5, 
    Automotive = 6, 
    Arts = 10, 
    BeautyCare = 11, 
    Fashion = 15
}

访问一个枚举

可以使用点语法: enum.member 访问枚举

enum WeekDays
{
    Monday, 
    Tuesday,
    Wednesday,
    Thursday, 
    Friday, 
    Saturday,
    Sunday 
}

Console.WriteLine(WeekDays.Monday); // 星期一
Console.WriteLine(WeekDays.Tuesday); // 星期二
Console.WriteLine(WeekDays.Wednesday); // 星期三
Console.WriteLine(WeekDays.Thursday); // 星期四
Console.WriteLine(WeekDays.Friday); // 星期五
Console.WriteLine(WeekDays.Saturday); // 星期六
Console.WriteLine(WeekDays.Sunday); // 星期日

转换枚举

从枚举类型转换为其基础整数类型需要显式强制转换。

enum WeekDays
{
    Monday, 
    Tuesday,
    Wednesday,
    Thursday, 
    Friday, 
    Saturday,
    Sunday 
}

Console.WriteLine(WeekDays.Friday); //输出:星期五 
int day = (int) WeekDays.Friday; // 枚举到int的转换
Console.WriteLine(day); //输出:4 
		
var wd = (WeekDays) 5; // 从int到枚举的转换
Console.WriteLine(wd);//输出:星期六

enum是一个抽象类。

C# FileInfoC# 结构体(Struct)
下一篇:C# StringBuilder