C#基础:枚举

枚举:

枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。

如果公司让你写一个电话分机的程序,当客户打电话到
前台后实现自动转接的功能,用户拨打分机号 900 转到人力部,
拨打分机号 800 转到市场部 …… 考虑一下,你会怎么去实现呢?
你可能会想到使用 switch...case 语句去实现这个功能,如下
代码:
int phoneNum = int.Parse (Console.ReadLine ()); 
switch (phoneNum) 
{ 
//像这种900的写法,属于硬编码,在程序中应尽杜绝!!! 
case 900: 
{ 
// 人力部
 do Something break; 
} 
//万一那天你离职了,这段断码需要别人花很大的时间才能读懂 
case 800:
{
 // 市场部 
do somethind break; 
} 
//....... 
}
为了避免上面的问题发生,我们今天将学习枚举!
可以 使用 enum 关键字来声明一种枚举类型 ,它的值被限制 在一些列符号名称中。


声明枚举类型

声明枚举类型: enum 枚举名 { 枚举值 1 ,枚举值 2....}
例:
enum Season
{
Spring,
Summer,
Fall,
Winter
}
在内部,一个枚举为每个元素都关联了一个整数值。默认情
况下,编号从 0 开始,它代表第一个元素,一个每个元素的编  

号都递增1

  • enum_name 指定枚举的类型名称。
  • Spring 是一个用逗号分隔的标识符列表。

实例:

using System;

public class EnumTest
{
    enum Day { Sun, Mon, Tue, Wed, Thu, Fri, Sat };

    static void Main()
    {
        int x = (int)Day.Sun;
        int y = (int)Day.Fri;
        Console.WriteLine("Sun = {0}", x);
        Console.WriteLine("Fri = {0}", y);
    }
}
当上面的代码被编译和执行时,它会产生下列结果:
Sun = 0
Fri = 5

使用枚举

枚举类型的变量只有赋值之后才能使用。只能将有效的值赋 给一个枚举变量。
Season colorful = Season.Fall;
Console.WriteLine(colorful);// 输出 “Fall”
不同枚举类型的直接量可以同名 
在内部,一个枚举为每个元素都关联了一个整数值。默认情况下,编号从
0 开始,它代表第一个元素,以后每个元素的编号都递增 1 。当然,我们也
可以自定义默认值,如下:
enum Season{Sprin 1 g=1,Sum 2 mer,Fa 3 ll,Win 4 ter}
另外允许为多个枚举直接量指定同一个基础值
enum Senson{Spring=1,Sumber=1,Fall,Winter}

 

对一个枚举变量执行数学运算,会改变这个变量的内部整数 值,输出该变量时,会输出对应的枚举常量值。

枚举总结: 

1. 枚举类型可以起到 自注释 、规范的作用,让程序显示的更清晰。
2 .enum 是一个声明枚举类型的关键字,我们不能用它去声明一个枚举变量。
3. 在游戏开发中, 通常用枚举类型来表示状态机 。(状态机可以理解为游戏
的状态,比如:游戏暂停、游戏结束等。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值