C#的高级特性
1.装箱
装箱就是将一个原始数据类型转换成一个对象的过程叫装箱。
例:
int a = 10;
object o = a;
这个过程就叫做装箱。
2.拆箱
拆箱和装箱是相反,就是将一个对象转换成原始数据类型的过程叫
做拆箱。
例:
int a = 10;
object o = a;
int j = (int)o;
这个过程叫做拆箱。
3.常量
和Java中对比来看
Java中常量的修饰关键字为:Final
C#中修饰关键字为const 经过const修饰的变量为常量。
注意: 必须在定义时给常量赋值,并且以后都不能改变。
4.数组
数组是一组具有相同数据类型的一块连续的内存空间。
数组是属于引用类型 其中数组又分为 :一维数组;二维数组。
而二维数组又分为: 距阵型数组 锯齿型数组
所有的数组其步骤都分为 1.定义 2 .开空间
先学习一维数组:
一维数组定义方法: 类型[ ] 变量名;
例:
int [ ] a ; ----定义数组。
a = new int [10]; --开辟空间
a[0] = 10;--赋值。
那么下面看另一行代码,我们看看这行代码做了几件事情
例:
int [ ] a = {1,2,3,4};
这行代码可以说做了上面的三件事情,定义数组,开辟空间并赋值。
二维数组的声明
可以和Java中的二维数组比较进行学习。
距阵型数组
Java的定义方式为:
例:
int [ ][ ] a = new int [2][3];
而C#的定义方法是:
例:
int [ , ] a = new int [ 2, 3 ];
a = [ 0 , 0 ] =10;
他在定义数组时是一个逗号隔开。
如果想得到距阵数组的所有元素的个数可以使用 Legth( )方法
GetLingth方法可以得到数组的行数,得到数组中某一维元素的个数
GerLingth(0)0是第一维
GetLingth(1)1是第二维
锯齿数组 (不规则数组)
锯齿数组我们可以理解为数组中的数组
C#中的的锯齿数组声明方式与Java相同,Java 中二维数组声明较为简单,
C#的二维数组声明分为2中,现在是锯齿型数组的声明方式:
例:
int [ ][ ] b = new int [ 4][ ]; 最后的方括号内不写入数字
b [ 0 ] = new int [ 4];
b [1 ] = new int [5]; --这几行代码是定义每一行中的元素的个数。
b [2 ] = new int [2];
b [ 0][ 1] = 10; ---赋值。
5.枚举
枚举是属于值类型.
使用枚举是可以把某个范围的数字可以以直观的方式显示。
而使用枚举也是为了使程序不易出现魔法数字,提高程序的可读性。
定义的关键字: enum
例:
enum 类型名
{
枚举内容
}
注意:内容中间用','隔开.
枚举的使用
例:
enum MyType = int
{
M = 0;
T = 1;
}
MyType week = myTepe.M;