1.引用类型变量都必须用new来创建
2.将值类型转换为引用类型的过程叫装箱,相反的过程叫拆箱。
将值类型变量的值复制到装箱得到的对象中,装箱后改变值类型变量的值并不会影响装箱对象的值。
拆箱得到的值类型数据的值与装箱对象相等。
3.(P52).C中有&和&&,|和||;C#中只有$和|。
4.(P53).is运算符用于检查变量是否为指定的类型。如果是返回真。如
5.(P54).typeof运算符用于获得系统原型对象的类型,也就是Type对象。
如:
Type mytype=typeof(int);
Console.WriteLine(mytype);
6.为了实现Nullable数据类型转换成non-Nullable型数据,就有了一个这样的操作符“??(两个问号)”,双问号操作符意思是取所赋值??左边的,如果左边为null,取所赋值??右边的,比如int y = x ?? -1 如果x为空,那么y的值为-1. 前提是x为int?类型。
7.(P58).Char类的使用。如Char.IsDigit(b);
8.(P61).
String类的使用.
比较字符串方法有三种:Compare,CompareTo,Equals.
格式化字符串方法:String.Format(string,object);
截取字符串方法:String.Substring(int startIndex,int length);
分割字符串:
插入字符串:
填充字符串:
删除字符串:public String Remove(int startIndex); public String Remove(int startIndex, int count);
复制字符串:copy方法和copyto。
替换字符串:Replace。
9.(P73).StringBuilder类.
String类是不可改变的,每次改变时都要创建新的对象。要修改字符串而不创建新的对象,则可以用StringBuilder类。
10.(P107).数组是由System.Array类派生而来的引用对象,而ArrayList是Array的升级版本,是一种高级的动态数组,位于System.Collections命名空间下。ArrayList有3个构造函数。各种方法:Add,Insert,Clear,Remove,RemoveAt,RemoveRange,Contains,IndexOf,LastIndexOf
11.(P114).哈希表是键/值对的集合。Add,Clear,Remove,Contains,ContainsValue方法。
遍历示例:
12.(P120).属性不能作为ref参数或out参数传递。
13.(P124).静态方法不对特定实例进行操作,引用this会导致编译错误。非静态方法是对类的某个特定实例进行操作,而且可以用this来访问该方法。
14.结构是一种值类型,所以结构的实例化不能使用new运算符。它不支持继承。它自动派生于System.ValueType类。结构可以有构造函数,但是必须带参数。
15.virtual不能与private,static,abstract,override同时使用。override不能与new,static,virtual同时使用。C#中,继承、虚方法和重写方法组合在一起才能实现多态性。