常用类库--Math、String、StringBuilder类

Math类

Math类用于提供初等数学函数实现。

Math类是System程序集中的一个静态类。

Math类定义了两个静态常量字段E和PI,分别表示自然对数e和圆周率Π。

 

String类

C#中使用关键字string来定义字符串类型,其原型为.NET类库中的System.String类。

C#中字符串有一个重要的特性:不可变性,字符串一旦声明就不再可以改变。只能通过索引来读取指定位置的char,不能对指定位置的char进行修改。

1>.静态字段

String类提供一个静态字段Empty(表示一个空字符串)。

string.Empty、null和""的区别

string.Empty和""意义相同,都表示空字符串;空字符串和空引用null是不同的,空字符串是一个对象,具有存储空间,而null表示尚未创建对象。例如,对空字符串调用length属性得到的是0,而对值为null的字符串调用length属性则会引发异常。

2>.属性

String类只拥有一个公共属性Length(表示字符串的长度)。

 

3>.字符串操作

1.字符串与字符数组转换

字符串转换到字符数组

ToCharArray:把字符串中的字符复制到数组中

String.Copy:将字符串复制到另一个字符数组中。

CopyTo:将字符串复制到另一个字符数组中。

字符数组转换到字符串--使用String类的构造函数

String(char,int):将一个字符重复多次来形成一个字符串。

String(char[ ]):将一个字符数组全部转换为一个字符串。

String(char[ ],int,int):将一个字符数组的一部分转换为一个字符串。

 

2.比较字符串

比较字符串是按照字典排序规则,判断两个字符的相对大小。按照字典规则,出现前面的单词小于出现在后面的单词。

String.Compare:比较字符串的内容,确定某些字符是否相等

CompareTo:比较字符串的内容,确定某些字符是否相等

String.CompareOrdinal:比较字符串的内容,确定某些字符是否相等

 

Object.RenferenceEquals:用于判断两个对象是否为同一个对象。比较的是两个对象是否指向同一个地址。

Equals方法用于判断两个字符串是否相同,有两种重装形式,

public bool Equals(string)

public static bool Equals(string,string)

Equals方法内部首先是调用Object.RenferenceEquals判断是否同一对象,如果返回false,接着判断两个字符串是否相同,相同返回true,否则返回false.

“==”、“!=”:其内部是通过Equals()方法来计较两个字符串是否相同的。

 

3.定位字符和子串

StartsWith:判断字符串是否与提供的子串开始。

EndsWith:判断字符串是否与提供的子串结束。

IndexOf:定位字符串中第一次出现某个给定子字符串或字符的位置。

IndexOfAny:定位字符串中第一次出现字符数组中的某个字符或一组字符的位置。

LastIndexOf:与IndexOf一样,但定位最后一次出现的位置。

LastIndexOfAny:与IndexOfAny,但定位最后一次出现的位置。

 

4.格式化字符串

String.Format:格式化包含各种值的字符串和如何格式化每个值的说明符

 

5.连接字符串

String.Concat:用于实现字符串连接功能

String.Join:把多个字符串连接在一起,并用一个特殊的符号来分隔。

“+”:将字符串连接在一起

 

6.分隔字符串

Split:在出现给定字符的地方,把字符串拆分为一个子字符串数组

 

7.插入和填充字符串

Insert:指定索引位置,插入字符串

PadLeft:在字符串的开头,通过添加指定的重复字符填充字符串

PadRight:在字符串的结尾,通过添加指定的重复字符填充字符串

 

8.删除和裁切字符串

Remove:删除字符串

Trim:删除首尾的空白或指定字符数组中的字符

 

9.替换字符串

Replace:用另一个字符或子字符串替换字符串中给定的字符或子字符串

 

10.更改大小写

ToLower:把字符串转换为小写形式

ToUpper:把字符串转换为大写形式

 

11.字符串截取

Substring:在字符串中获取给定位置的子字符串

 

12.判断是否包含子串

Contains:判断字符串中是否包含提供的子串

 

13.字符串解析

Parse

格式化能将不同类型的对象转换为字符串格式,与之相反,许多类型还能够从一个字符串出发构造其对象,这个过程叫做“字符串解析”。C#中的很多类型都定义了字符串解析的基本方法,这些方法的共同特点是:1.方法名为parse。2.方法是静态的,且返回类型就是该方法所属的类型。3.方法只有一个string类型的参数。

举例(下面给出了一些常见类型的解析字符串的例子)

Bool b=bool.parse(“true”);

Datetime dt=datetime.parse(“2008-10-22”);

TryParse

在使用这些类型的parse方法时,如果字符串不符合类型的格式要求,程序就会发生异常。为了提高程序的可靠性,一些类型还提供了另一个替代方法TryParse。和Parse方法不同,TryParse方法通常有两个参数,一个表示要解析的字符串,另一个为输出参数,用于存放解析的结果,方法返回一个布尔值,用于指示解析是否成功。

 

StringBuilder类

String类的索引函数是只读的,其各种操作方法不是修改字符串本身,而是生成新的字符串。准确地说,一旦创建了一个String对象,其内容就是不可变的,每次操作都是生成一个新字符串。

为了方便对同一个字符串的频繁操作,.NET类库专门提供了一个StingBuilder类,它对字符串进行动态管理,即允许直接修改字符串本身的内容,而不是每次操作都生成新字符串。

posted @ 2014-08-22 09:02  百年一人  阅读(655)  评论(0编辑  收藏  举报