c#--枚举、结构体、数组小结

枚举

枚举内容可结合上篇博客一起理解

c#视频–变量和常量和常用数据类型
直接举个例子,大家就明白了。

	public enum Direct
    {
        //枚举值:东,南,西,北
        east,
        west,
        south,
        north
    }
    
    public enum Gender
    {,}

我对枚举的理解:枚举就是将可能的有限的值放在一起,规定好了几个确定的值,那为什么要这样做呢???
举个例子表示“女”的词汇有很多,比如女生,女孩,美女,等等等,没有一个统一的规定,每个人用的名称都不一样,比如要在数据库中检索,我到底查女生呢还是查美女呢,这样查出来会不会有遗漏产生呢。而引入枚举之后,枚举值限定了变量的取值范围,不管是美女还是女汉子,都统一用“女”来表示,这样就更加的规范了。
注意:枚举可以强转为int类型,枚举值实质上本质上就是int类型。(在上篇博客中有详细介绍)
通常情况下,最好是在命名空间内直接定义枚举,以便该命名空间中的所有类都能够同样方便的访问它。

			Gender gender = Gender.;
            int num = (int)gender;
            Console.WriteLine(num);
            Console.ReadKey();

            //将字符串类型转换为枚举类型
            Gender g = (Gender)(Enum.Parse(typeof(Gender),"男"));


结构体

思考?

老师要统计班长的姓名、年龄、性别、邮箱和家庭住址,这时候我们要分别声明五个变量来存储这五个信息。如果按照同样的思路,老师要统计全班的信息的时候,假设全班有30个人,那么这时候是不是就要声明150个变量呢?人数越多,我们需要声明的变量就越多,如何解决这个问题呢,这时候就要引入结构体了。
举个例子:下面就用到了People这个结构体,在结构体里面声明了姓名、年龄、性别、电话、地址这五个变量,后面张三和小兰都是用的这五个变量。没有在重新声明新的变量。

//结构体声明语法
[访问修饰符]  struct 结构名
{
	//结构体
}

 //在命名空间中声明
 public struct People
 {
      public string _name;
      public Gender _gender; 	//在这里用到了上面所定义的枚举
      public int _age;
      public string _address;
      public string _telephone;
 }

//在main主函数中使用

People ZsPeople;
ZsPeople._name = "张三";      //张三的姓名
ZsPeople._sex = Gender.;    //张三的性别,用到了枚举
ZsPeople._age = 21;           //张三的年龄
ZsPeople._telephone = "234576878";  //张三的电话
ZsPeople._address = "河北省廊坊市";  //张三的地址


People XlPeople;
XlPeople._name = "小兰";      //小兰的姓名
XlPeople._sex = Gender.;    //小兰的性别,用到了枚举
XlPeople._age = 23;           //小兰的年龄
XlPeople._telephone = "1841111111";  	//小兰的电话
XlPeople._address = "河北省沧州市";  	//小兰的地址

【总结】从上面的例子中,我们可以看出结构体是用来一次性的声明多个不同类型的变量的。而下面要讲的数组,则是用来一次性声明多个相同类型的变量的。

数组

数组的声明方法
            //第一种 
            int[] nums = new int[10];   //长度为10,索引为0-9,int类型

            //第二种
            int[] nums2 = new int[] { 1, 2, 3, 4, 5 };  //数组长度为5,下标为0-4,存了5个值,中括号没有值,但是大括号里面有元素数,有5个元素,所以断定此数组只能存5个值

            //第三种
            int[] nums3 = new int[3] {1,2,3 };   //长度为3,下标为0-2,3个值,int类型

            //第四种
            int[] nums4 = { 1, 2, 3, 4, 5 };   //长度为5,下标为0-4,int类型,5个值
            
			//下面是一种错误的声明,大括号内必须也是5个元素才可以
			//int[] nums3 = new int[5] {5,8,3 };   /

下面是变量的赋值和取值:

			//赋值
            int[] nums = new int[5];
            for (int i = 0; i < 5; i++)
            {
                nums[i] = 10;                 //给数组中的5个数每一个数都赋值为10
            }
            //取值
            int[] numbers = { 542,567,678};   //数组中有三个数
            for (int i = 0; i < 5; i++)
            {
                Console.WriteLine(numbers[i]);   //依次输出数组中的三个数542,567和678
            }
            Console.ReadKey();

注意
int[i] nums=new int[5];
在这里i叫做下标或者索引,从0开始,通过下标和索引可以对数组进行取值或者赋值。

发布了61 篇原创文章 · 获赞 16 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/wtt15100/article/details/104136856