1, 什么叫枚举?
答:枚举是由程序员定义的类型,与类或结构一样。
注:1> 与结构一样,枚举是值类型,因此直接存储它们的数据,而不是分 开存储成引用和数据。枚举存储在栈中。
2> 枚举只有一种类型的成员:命名的整数值常量。
3> 每个枚举类型都有一个底层整数类型,默认为int。编译器把第一个 成员赋值为0,并对每一个后续成员赋的值比前一个成员多1。
2, 枚举在栈中排列的示例?
class Program
{
static voidMain(string[] args)
{
TrafficLight t1 = TrafficLight.Green;
TrafficLight t2 = TrafficLight.Yellow;
TrafficLight t3 = TrafficLight.Red;
Console.WriteLine("{0},{1}", t1,(int)t1);
Console.WriteLine("{0},{1}", t2, (int)t2);
Console.WriteLine("{0},{1}", t3, (int)t3);
Console.ReadKey();
}
}
enum TrafficLight
{
Green,
Yellow,
Red
}
程序输出的结果为:
Green,0
Yellow,1
Red,2
3, 关于枚举的补充?
因为枚举的成员是常量,即使在没有该枚举类型的变量时它们也可以访问。使用枚举 类型名跟着一个点和成员名。
示例代码:
class Program
{
static voidMain(string[] args)
{
Console.WriteLine("{0}", TrafficLight.Green);
Console.WriteLine("{0}", TrafficLight.Yellow);
Console.WriteLine("{0}", TrafficLight.Red);
Console.ReadKey();
}
}
enum TrafficLight
{
Green,
Yellow,
Red
}
程序输出结果:
Green
Yellow
Red
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架