C#基础内容--枚举

一.枚举

1.基本概念--被命名的整形常量的集合--表示状态、类型

申明枚举--创建一个自定义的枚举类型

申明枚举变量--使用自定义的枚举类型--创建一个枚举变量

申明枚举语法--enum E_自定义枚举

enum E_自定义枚举名
{
    自定义枚举项的名字 = 5; #那就变成5了
    自定义枚举项的名字1; #后面就是6啦
    自定义枚举项的名字2;
}

 2.在那里申明枚举--在namespace语句块种申明 /class/struck(不要再函数里申明

using system
namespace Meiju{
    enum E_Monster{
        normal, //0
        boss, //1
        }
}

3.枚举的使用--和switch天生一对

E_Monster monstertype = E_Monster.boss;
            switch (monstertype)
            {
                case E_Monster.boss:
                    Console.WriteLine("niubi");
                    break;
                case E_Monster.noemal:
                    Console.WriteLine("laji");
                    break;
                default:
                    break;
            }

转类型

int i = (int)monstertype;

直接查看类型

string str = monstertype.ToString();
#boss

4.总结--游戏中玩家有很多状态需要用一个变量去标识--表示当前的状态(比如int之类的)

1)行走 2)待机 3)跑步 等等

枚举可以帮我们清晰的分清楚状态的含义--把数字比喻化

5. 一个小练习--输入选择的QQ模式

using System;
namespace QQ_space
{
    enum E_QQ
    {
        zhuangtai,
        zhuangtai1,
        zhuangyai2,
    }
    class QQ
    {
        static void Main (string[] args)
        {
            Console.WriteLine("请选择一个在线模式");
            string input = Console.ReadLine();
            int number;
            number = int.Parse(input);
            //E_QQ qqtype = E_QQ.zhuangtai1;
            switch (number)
            {
                case 1:
                    Console.WriteLine("choose first");
                    break;
                case 2:
                    Console.WriteLine("choose second");
                    break;
                case 3:
                    Console.WriteLine("choose third");
                    break;
                default:
                    break;
            }


        }


    }
}

6.购买咖啡小案例

using System;
namespace XingBaKe
{
    enum E_classify
    {
        little_cup,
        middle_cup,
        niubi_cup,
    }
    class Coffe
    {
        static void Main(string[] args)
        {
            int result;
            Console.WriteLine("请问您想买哪种咖啡?");
            string input = Console.ReadLine();
            if (input == "little_cup")
            {
                result = 0;
            }else if(input == "middle_cup")
            {
                result = 1;
            }
            else
            {
                result = 2;
            }
            //int number;
            //number = int.Parse(input);
            switch (result)
            {
                case 0:
                    Console.WriteLine("您购买啦little_cup,共花费35元");
                        break;
                case 1:
                    Console.WriteLine("您购买啦middle_cup,共花费40元");
                    break;
                case 2:
                    Console.WriteLine("您购买啦niubi_cup,共花费43元");
                    break;
                default:
                    break;
            }
        }
    }
}

最后:小游戏

sing System;
namespace First_game
{
    enum E_gender
    {
        male,
        female,
    }
    enum E_working
    {
        fight,
        hunter,
        magicer,
    }
    class Play
    {
        static void Main(string[] args)
        {

            int GongJi = 0;
            int FangShou = 0;
            Console.WriteLine("请选择你的性别,男0,女1");
            int gender = int.Parse(Console.ReadLine());
            E_gender gendertype = (E_gender)gender; //强制转换
            switch (gendertype)
            {
                case (E_gender)0:
                    GongJi += 50;
                    FangShou += 100;
                    break;
                case (E_gender)1:
                    GongJi += 120;
                    FangShou += 30;
                    break;
                default:
                    break;
            }
            Console.WriteLine("请选择你的职业,战士0,猎人1,法师2");
            int worktype = int.Parse(Console.ReadLine());
            E_working workType = (E_working)worktype;
            switch (workType)
            {
                case (E_working)0:
                    GongJi += 20;
                    FangShou += 100;
                    Console.WriteLine($"您的攻击力是{GongJi},防御力是{FangShou},技能是冲锋");
                    break;
                case (E_working)1:
                    GongJi += 120;
                    FangShou += 30;
                    Console.WriteLine($"您的攻击力是{GongJi},防御力是{FangShou},技能是假死");
                    break;
                case (E_working)2:
                    GongJi += 200;
                    FangShou += 10;
                    Console.WriteLine($"您的攻击力是{GongJi},防御力是{FangShou},技能是奥术冲锋");
                    break;
                default:
                    break;
            }


        }
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值