---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
1、枚举/常量/结构
常量
语法:
Const类型 常量名=常量值;(定义一个不可改变的量)
在定义时赋值,其他地方不允许赋值。
Const double PI=3.14;
枚举
让我们定义一种枚举类型并且在定义这种类型时我们要指定这个类型的所有可能的值。
语法:
Enum 自己起的类型名称{可能出现的值 用逗号隔开};
Enumsex{男,女}
枚举的定义,一般和类定义在同一个级别。这样,在同一个命名空间下的所有的类都可以使用这个枚举了。(方法/类中也可以 不过其他类就无法使用了)
Gender是一种数据类型(如int),定义变量时直接变量=空格 自动提示
Gender sex;
sex=Gender.男;//sex= 空格自动提示
枚举作用:(1)限制用户不能随意赋值,只能在定义枚举时列举的之中选择
(2)不需要死记每一个值是什么,只需要选择相应的值。
注意:定义枚举时,值不能为int类型。
枚举类型的变量都可以强制转换成int类型。(枚举类型的值在定义时,都有一个默认编号从0开始)
如果想让男变为1,定义枚举时给男赋值为1,这时男后边的枚举类型相应加1
如何把一个字符串转换成枚举类型:
(自己定义的枚举类型)(Enum.Parse(typeof(自己定义的枚举类型),待转换的字符串));
背下来
注意:下面运行结果中第一个男为字符串类型,第二个为枚举类型
2、结构
为什么要用结构:
(1) 比如我们上课讲的为了存储一个人的信息,要声明一组变量。当我们要存储n个人的信息时,就要声明n组变量,太麻烦。
(2) 存储一个人的信息的这几个变量间没有关系,容易记混乱。
语法:
访问修饰符(暂且用public) struct 结构名 //结构也是一种类型
{
定义结构成员(包括变量和方法)
Public string Name;
Public int Age;
Public int Popularity;
Public string Hobby;
Public void SayHi() //方法
{
//。。。。。。
}
}
注意:定义好一个结构以后,就可以直接声明相应的变量了。
声明好变量后,通过变量名.成员名 来访问结构的成员
3、数组
数组可以帮我们一次声明多个同类型的变量,这些变量在内存中是连续存储的
语法:
数据类型[] 数组名=new 数据类型[数组长度];
例如:int[] score = new int[5];
就声明了一个长度为5数组,数组叫score;
通俗点说:就是声明了一个数组,里面包含5个int类型的变量。
数组名叫:score 里面5个int类型的变量叫:数组的元素
Int(decimal/double)类型数组一旦声明,里面每一个元素被初始化为0
Char/string类型数组一旦声明,里面每一个元素不初始化
通过 数组名.Length 可以获得数组的长度
int[] score=new int[10];
Console.WriteLine(score.Length);
清屏:Console.Clear();
数组另一种赋值方法
Int[] nums={5,3,8}
4、数组交换
5个元素 6个元素
0-4 0-5
1-3 1-4
2-3
N个元素进行交换
1)交换n/2次
2)在一个循环中,第i个元素与第length-1-i个元素进行交换
5、冒泡排序
什么叫冒泡排序
让数组中的元素两两比较(第i个与第i+1个比较),经过n(i-1)遍的两两比较,数组中的元素能按照我们预期的规律排序。
要从大到小排序,我们进行亮亮比较的时候用<(a<b,则a,b交换)
10,20,30,40,50,60,70 原始数据7个元素
20,30,40,50,60,70,10 第一趟比较 比较6次
30,40,50,60,70,20,10 第二趟 比较5次
40,50,60,70,30,20,10 第三趟 比较4次
50,60,70,40,30,20,10 第四趟 比较3次
60,70,50,40,30,20,10 第五趟 比较2次
70,60,50,40,30,20,10 第六趟 比较1次
N个数需要n-1趟,
第i趟比较次数为n-i此
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------