C# 枚举

枚举的作用


在游戏开发中,对象很多时候 会有许多的状态
比如玩家 有一个动作状态 我们需要用一个变量或者标识 来表示当前玩家处于的是哪种状态
综合考虑 可能会使用 int 来表示他的状态
1行走2待机3跑步4 跳跃。。。等等

枚举可以帮助我们 清晰的分清楚状态的含义

 

被命名的整形常量的集合

声明位置 

namespace语句块中声明(常用)

class 中 struct中

!不能在方法中声明

枚举的声明  enum关键字 

enum  E_枚举名字

{

变量名1,                               //没有赋值第一个默认为0 后面依次增加 第二个1 第三2 第四3

变量名2,                               //给变量2 赋值 =10

变量名3;                                //变量3 依次增加变为11 

}

枚举的使用 (在函数中使用)

E_枚举名字 变量 = 默认值(E_枚举名字.变量名1);

if(变量==默认值(E_枚举名字.变量名2))

{

}

_____________________________________________________________________________

namespace 枚举

        enum E_playerType

        {

            main,

            other,

        }


   class program { 

            static void Main (String[] args)
            {
         

            E_playerType playertype = E_playerType.main;

            switch (playertype)

            {

                case E_playerType.main:
                    Console.WriteLine("执行主玩家逻辑");
                    break;
                case E_playerType.other:
                    Console.WriteLine("执行其他玩家逻辑");
                    break;


            }
        }
 }
}

枚举的作用是让状态可读性更高。

枚举的类型转换(用的少了解一下)

和int转

int a=(int)playertype;    //枚举转int

Console.WriteLine(a);

playertyper=1;              //int转枚举

和string转

string str =playertype.ToString();

Console.WriteLine(str);   //这里打印出来 是playertype中的变量名 main

   playertype =(E_playerType)Enum.Parse(typeof(E_playerType), "other");

//先用Enum类中的Parse方法转成通用类型 再 强制转换成E_playerType类型

//Parse方法中第一个参数是要转成什么类型,第二个是转成什么值
   Console.WriteLine(playertype);

// 打印出other

  • 35
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值