结构 枚举 数组

    
                                                结构 枚举 数组
struct 类型是一种值类型,通常用来封装小型相关变量组。
结构具有以下特点:
结构是值类型,而类是引用类型。与类不同,结构的实例化可以不使用 new 运算符。结构可以声明构造函数,但它们必须带参数。一个结构不能从另一个结构或类继承,而且不能作为一个类的基类。所有结构都直接继承自System.ValueType,后者继承自 System.Object。
结构可以实现接口。结构可用作可为 null 的类型,因而可向其赋 null值。


方法:普通方法实例化后调用  静态方法用结构名调用


 

 


枚举
enum 关键字用于声明枚举 部分代码如下:

    enum Jijie//枚举与类是同等级的 定义在类外或者定义在类的内部也行

    {
        春,
        夏,
        秋,
        冬
    }
    [Flags]
    enum Week //加上[Flags]标记 成员可以进行与运算 不加就不能进行与运算
    {
        周一 = 1,
        周二 = 2,
        周三 = 4,
        周四 = 8,
        周五 = 16,
        周六 = 32,
        周日 =64
    }
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("加了[Flags]的 ");
            Console.WriteLine((Week)     int.Parse(Console.ReadLine()));//通过数字选择定义的某一成员
              Console.WriteLine((Week)5);//周一 周三 通过与运算获取成员
              Week w = Week.周二|Week.周日;//加上[Flags]标记 成员可以进行与运算 不加就不能进行与运算
              Console.WriteLine(w);
              Console.WriteLine("完成 ");

              Jijie m = Jijie.春 | Jijie.秋;//加上[Flags]标记 成员可以进行与运算 不加就不能进行与运算 秋           
              Console.WriteLine(m);
              Console.WriteLine((Jijie)int.Parse(Console.ReadLine()));//通过数字选择定义的某一成员
              Console.WriteLine((Jijie)3);//冬 通过与运算获取成员
              Console.WriteLine();

        }
    }
}
******************************************************************************************

//一维数组  
            //int[] A = new int[] { 1, 2, 1, };//实例化new 初始化 数据
            //int[] A =  { 1, 2, 1, };


            //int[] A = new int[3];
            //for (int i = 0; i < A.Length; i++)
            //{
            //    A[i] = i * 3;//数组遍历存 进值
            //}
            //for (int i = 0; i < A.Length; i++)//A.GetLength(0) 第一种输出数组的方法
            //{
            //    Console.Write(A[i]);//取值              
            //}
            //Console.WriteLine();
            //foreach (int i in A)//第二种输出数值元素的方法 i代表数组中的元素
            //{
            //    Console.Write(i);
            //}

            //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


            ////二维数组
            //int[,] B = new int[3, 3];                       //初始化
            //for (int i = 0; i < B.GetLength(0); i++)          //行
            //{
            //    for (int j = 0; j < B.GetLength(1); j++)      //列
            //        {
            //            B[i,j]=i+j;                        //赋值
            //            Console.Write(B[i, j] + ",");        //取值
            //        }
            //    Console.WriteLine();                        //换行
            //}
           
            //########################################################


            ////交错数组
            //int[][] jcArr = new int[3][];   //第一个必须有 第二个不能有
            //jcArr[0] = new int[] { 1, 2, 2 };
            //jcArr[1] = new int[] { 1, 2 };
            //jcArr[2] = new int[] { 1, 2, 3, 3, 34, 4 };
            //for (int i = 0; i < jcArr.GetLength(0); i++)
            //{
            //    for (int j = 0; j < jcArr[i].Length; j++)
            //    {
            //        Console.Write(jcArr[i][j]);                   
            //    }
            //    Console.WriteLine();

            //}
            //foreach (int[] i in jcArr)
            //{
            //    foreach (int j in i)
            //    {
            //        Console.Write(j);
            //    }
            //    Console.WriteLine();
            //}


            ////&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&数组函数
            Array a = Array.CreateInstance(typeof(string), 5);//类型 长度
            a.SetValue("1111111111", 0);//赋值
            Console.WriteLine(a.GetValue(0));//取值

            ////^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            //冒泡排序函数
            int[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 3 };
            Array.Sort(arr);//升序          
            foreach (int i in arr)
            {
                Console.WriteLine(i);
            }
            Array.Reverse(arr);//降序
            foreach (int i in arr)
            {
                Console.WriteLine(i);
            }
            ////^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章