2.@符号会忽略转义字符。
3.很多对象都会有ToString()方法
4.Length()、ToUpper()、ToLower()
5.Split()方法
string[] strDes = strObj.Split("分隔符");
6.在字符串中搜索
IndexOf("abc")和LastIndexOf
7.正则表达式搜索
要使用类 System.Text.RegularExpressions.Regex
Regex oRegex = new Regex();
bool a = oRegex.IsMatch("abcdefg",sPattern,RegexOptions.IgnoreCase)
8.StringBuilder联接多个字符串
using System.Text;
//StringBulider类在System.Text命名空间中
StringBuilder sb = new StringBuilder();
sb.Append("One");
sb.Append("Two");
sb.Append("Three");
WriteLine(sb.ToString());
或
string str = sb.ToString();
WriteLine(str);
9.修改字符串
字符串是不可变的,因此不能修改字符串的内容。但是,可以将字符串的内容提取到非不可变的窗体中,并对其进行修改,以形成新的字符串实例。
string str = "The fox!";
WriteLine(str);
char[] vChars = str.ToCharArray(); //字符串转换为字符数组
int vIndex = str.IndexOf("fox");
if (vIndex !=-1)
{
vChars[vIndex++]="c";
vChars[vIndex++]="a";
vChars[vIndex]="t";
}
string str2 = new string(vChars);//字符数据又转换为字符串
WriteLine(str2);
10.重载运算符
public static Complex operator +(Complex c1, Complex c2)
11.转换运算符
public static explicit operator SampleClass(int i)
显式转换explicit
隐式转换implicit
12.相等比较
引用相等:System.Object.ReferenceEquals(a, b); ==
值相等:
默认情况下,运算符 == 通过判断两个引用是否指示同一对象来测试引用是否相等,因此引用类型不需要实现运算符 == 就能获得此功能。通过重载运算符 == 来比较值是否相等而不是比较引用是否相等可能会很有用。
Equals 是一个虚方法,允许任何类重写其实现,x.Equals(x) 返回 true。
13.对象、类和结构
结构是值类型,而类是引用类型
14.继承与多态
类可以从其他类中继承。对象可以表示多个类型的能力称为多态性。
(1)abstract 抽象类不能实例化
抽象类的用途是提供多个派生类可共享的基类的公共定义。
抽象方法没有实现,所以方法定义后面是分号,而不是常规的方法块。抽象类的派生类必须实现所有抽象方法。当抽象类从基类继承虚方法时,抽象类可以使用抽象方法重写该虚方法。
(2)sealed 密封类
密封类不能用作基类。因此,它也不能是抽象类。密封类主要用于防止派生。由于密封类从不用作基类,所以有些运行时优化可以使对密封类成员的调用略快。
在对基类的虚成员进行重写的派生类上的类成员、方法、字段、属性或事件可以将该成员声明为密封成员。在用于以后的派生类时,这将取消成员的虚效果。方法是在类成员声明中将 sealed 关键字置于 override 关键字的前面。