黑马程序员.Net学习笔记 03篇.结构、数组、枚举

来源:互联网 发布:黑科技网络怎么使用 编辑:程序博客网 时间:2024/05/16 09:31

----------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------



常量:

const 变量类型 变量名称=值;

在定义时赋值,其他的方不许赋值


枚举:

enum 自定义类型名{值1,值2,、、、值n};一般和类定义在同一个级别

示例:enum Gender{男,女};            定义一个叫Gender枚举类型

          Gender sex=Gender.男;         定义一个类型为Gender变量

定义枚举时,值不能是int类型。

枚举类型可以通过WriteLine直接输出他的值。

使用WriteLine(int(sex));也可以强转成int类型,原因是定义枚举值时,是有一个0开始的默认编号。

若enumGender{男=1,女};则女的编号是2。

将字符串转换成枚举类型,使用

(Gender)(Enum.Parse(typeof(Gender),str))   str是待转的字符串。


结构:

语法:

访问修饰符 struct 结构名

   {

       定义结构成员

    }  C#中的结构可以包含方法。

例如:

public struct Person

   {

      public string name;

      public Gender sex;

      public int age;

   }

类是引用类型,结构是值类型;

结构是隐式密封的,这意味着他们不能被派生。


数组:

数组类型[] 数组名=new 数组类型[数组长度]

int[] score=new int[5]

或者int[] score={0,0,0,0,0}         或    int[] score=new int[]{0,0,0,0,0}

通过,数组名[索引号],访问数组中的变量,编号从0开始。

score.Length是数组score的长度。


a=表1?表2:表3(三元)

若表1为真,则表2赋给a,若表1为假,则表3赋给a


冒泡排序:

走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,重复地进行直到没有再需要交换。

namespace 冒泡排序{    class Program    {        /// <summary>        /// 将数组从大到小排列        /// </summary>        /// <param name="args"></param>        static void Main(string[] args)        {            int[] arr = new int[] { 4, 5, 3, 53, 12, 7, 6, 1 };            for (int i = 0; i < arr.Length-1; i++) //外层循环,每循环一次,待处理的区间减一            {                for (int j = 0; j < arr.Length-1-i; j++)//内层循环用来遍历相邻元素关系                {                    if (arr[j] < arr[j + 1])                    {                        int temp = 0;                        temp = arr[j];                        arr[j] = arr[j + 1];                        arr[j + 1] = temp;                    }                }            }            //将排序结果打印出来            for (int i = 0; i < arr.Length-1; i++)            {                Console.Write(arr[i]+",");            }            Console.WriteLine(arr[arr.Length-1]);                Console.ReadKey();        }    }}


程序调试

设置断点、单步运行,观察变量




----------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

原创粉丝点击