欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 会展 > C#里的枚举类型使用

C#里的枚举类型使用

2025/1/2 20:03:57 来源:https://blog.csdn.net/m0_73117967/article/details/144791595  浏览:    关键词:C#里的枚举类型使用

来源gpt,仅记录


在 C# 中,枚举类型(enum)是一种值类型,它定义了一组命名的常量。枚举类型的定义通常用于表示一组具有相关性的固定值,比如星期、颜色、状态等。

1、枚举的基本语法

enum 枚举名称
{枚举值1,枚举值2,枚举值3,// ...
}

2、定义和使用枚举

enum DayOfWeek
{Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday
}
class Program
{static void Main(string[] args){// 定义一个变量并赋值DayOfWeek today = DayOfWeek.Monday;// 输出枚举值Console.WriteLine("Today is: " + today);// 使用枚举值进行条件判断if (today == DayOfWeek.Monday){Console.WriteLine("It's the start of the week!");}// 枚举值转换为整数int dayIndex = (int)today;Console.WriteLine("Day index: " + dayIndex);// 整数转换为枚举值DayOfWeek dayFromIndex = (DayOfWeek)4;Console.WriteLine("Day from index: " + dayFromIndex);}
}

3、自定义枚举值

你可以为枚举中的值指定整数:

enum SeverityLevel
{Low = 1,Medium = 2,High = 3,Critical = 4
}

4、枚举的特点

1)默认类型:枚举底层默认是 int 类型,但也可以显式指定为其他整型(byteshort 等):

enum ByteEnum : byte
{A = 1,B = 2
}

2)默认值:枚举的第一个值默认是 0,后续值依次递增(如果未显式指定)。

3)强类型检查:枚举提供强类型检查,防止无效值的使用。

5、为什么默认是int型,在使用时还是需要类型转换为int?

这是因为 C# 中的 枚举类型(enum)是一个独立的类型,虽然它的底层默认存储类型是 int,但为了保持类型安全和可读性,C# 不允许在大多数情况下直接将枚举类型与整数类型混用。你需要显式地进行类型转换,以便开发者能明确看到并意识到这种操作的意图,避免隐式转换引发的错误或混乱。

枚举的设计初衷是为程序中的一组相关常量提供一个可读性强的标识符,而不是直接使用数字值。

DayOfWeek today = DayOfWeek.Monday;
Console.WriteLine(today); // 输出 "Monday",而不是 0

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com