C#语言基础-lesson#5 枚举+结构体(枚举,结构体,访问修饰符)

2021-03-10 20:11发布

C#语言基础

lesson#5 结构体+结构体

内容:

1. 枚举,结构体,访问修饰符前言

2. 枚举;

3. 结构体;

1,前言: 枚举,结构体,访问修饰符都要写在class之前
//枚举:又称为一一列举,把要取的值列举出来,然后在列举的值里面选择要赋的值

//枚举一般定义在类的外面,语法格式:

//enum枚举类型名{值1,值2...}

//enum是关键字,用来定义一个枚举类型的,自定义的类型名字首字母均要大写

//系统会给枚举值赋一个默认的int类型的值,第一个枚举值为0,第二个为1,以此类推,因此枚举值和int类型的值之间可以进行转换

    enum Sex

    {

        ,

        

    }

//练习:定义一年四季的枚举

//定义人的动作的枚举

 

//可以根据解决问题的实际需求,人为的更改枚举值

    enum Season

    {

        Spring=1,

        Summer,

        Autumn,

        Winter

    }

    enum PlayerStatus

    {

        Run,

        Shoot,

        Jump,

        Throw,

        Eat,

        Dance

    }

    enum LP

    {

        Normal=2,

        Magic=10

    }

    enum Department

    {

        市场部=800,

        财务部=900

    }

    enum GameStatus

    {

        开始游戏,

        暂停游戏,

        结束游戏

    }

    enum Week

    {

        Monday=1,

        Tuesday,

        Wednesday,

        Thursday,

        Friday,

        Saturday,

        Sunday

    }

    enum Things

    {

        上课,

        吃饭,

        约会,

        运动,

        打手卫生,

        看电影,

        看书    

    }

//结构体语法格式:

/*

struct 类型名

 {

成员

 }

 */

//public是访问修饰符,它规定了结构体或者类里的访问权限,结构体里面的变量和方法统一称为结构体的成员,变量称为字段,public所修饰的成员,访问不受限制

    struct PersonInfo

    {

        public string name;

        public Sex sex;

        public int age;

        public string address;

    }

    struct StudentsInfo

    {

        public string name;

        public int age;

        public string StudentID;

        public double score;

    }

    struct Tool

    {

//public 表示该成员是公有的,访问不受限制,即在结构体或者类的内部和外部均可被访问

        public double PI;

//private表示该成员是私有的,只能在结构体或者类的内部访问,外部不可被访问

//在结构体或类的里面,成员前面不加任何访问修饰符,该成员默认是私有的。

        private double radius;

    }

2,枚举

//int a = 10;

            Sex sex = Sex.男;

//枚举有自注释的作用

            Season sea = Season.Spring;

            PlayerStatus playstatus = PlayerStatus.Dance;

//要求:从键盘输入1,打印春天,输入2打印夏天,输入3打印秋天,输入4打印冬天;

            Console.WriteLine((int)sex);

//把一个int类型的值,转成枚举值

            Console.WriteLine((Season)3);

 

            int count = Convert.ToInt32(Console.ReadLine());

            Season season = (Season)count;

 

            //if (season==1)

            //{

            //    Console.WriteLine("春天");

            //}

            //if (season == 2)

            //{

            //    Console.WriteLine("夏天");

            //}

            //if (season == 3)

            //{

            //    Console.WriteLine("秋天");

            //}

            //if (season == 4)

            //{

            //    Console.WriteLine("冬天");

 

            if (season == Season.Spring)

            {

                Console.WriteLine("春天");

            }

            if (season == Season.Summer)

            {

                Console.WriteLine("夏天");

            }

            if (season == Season.Autumn)

            {

                Console.WriteLine("秋天");

            }

            if (season == Season.Winter)

            {

                Console.WriteLine("冬天");

            }

 

            switch (season)

            {

                case Season.Spring:

                    Console.WriteLine("春天");

                    break;

                case Season.Summer:

                    Console.WriteLine("夏天");

                    break;

                case Season.Autumn:

                    Console.WriteLine("秋天");

                    break;

                case Season.Winter:

                    Console.WriteLine("冬天");

 

                    break