一、概述
字符串类型在程序设计中是使用最频繁的数据类型,掌握好字符串类型的特性和使用非常重要,特别是字符串中一些常用的方法及算法。C#中的字符串类型的关键字是string。字符串的表示方法是用英文的双引号“括起来”,比如:"a",这个就是字符串。
二、字符串特性
1. 字符串是不可变的
字符串的不可变是指字符串对象不会发生变化。具体的解释是:string str = “First”;这个声明字符串变量s是这么一个过程,在栈区分配空间给字符串变量s用来保存指向字符串“First”的引用(内存地址),然后指向存储在托管堆中的字符串“First”,也就是实际的字符串对象是存储在托管堆中的,不同于值类型,引用类型在栈区保存的是引用;接着,str = “Second”,那么这时候只是更改了存储在栈区中的引用(内存地址),即“指向”托管堆中另外一个“地方”,也就是字符串对象“Second”所在的托管堆内存地址,而原来的字符串对象“First”并没有发生改变,它将会被垃圾收集器在合适的时候做资源回收处理。
2. 字符串的长度
字符串的长度是指一个字符串它共有多少个字符组成,其中包括空白字符。计算字符串的长度使用String类的Length属性。字符串长度属性,用于计算一个字符串的长度,常常用来组合其他字符串方法来使用,譬如截取字符串指定长度的子字符串。
3. 拼接字符串
可以使用“+”的方式实现字符串的拼接。例如string a=“123”;a=a+"4",那么这时候字符串变量的值就是“1234”。
三、字符串常用的方法
掌握好字符串常用的方法,对于提供编程效率帮助是非常大的。
1. 实例方法: Trim【删除字符串中指定的前导和后置字符并返回对应的字符串】
public string Trim(); // 删除前导和后置空白字符
public string Trim(param char[] trimChars) // 删除前导和后置指定的字符
对应的:只删除前导使用StartTrim方法,后置的使用EndTrim方法。
2. 实例方法:Contains 【返回一个值,该值指示指定的子串是否出现在此字符串中】
public bool Contains (string value)
3. 实例方法:StartWith、EndWith【字符串实例的开头是否与指定的字符串匹配】
public bool StartsWith(String value)
public bool EndWith(String value)
4. 实例方法:ToUpper、ToLower【此字符串转换为大/小写形式的副本】
public String ToUpper();
public String ToLower();
5. 实例方法:Substring【从此字符串指定的位置截取指定长度的字符串并返回】
public string Substring(startIndex)
public string Substring(startIndex, length)