C# String和string的区别

  1. 从位置讲:

    1.String是.NET  Framework里面的String,小写的string是C#语言中的string

     2.如果把using System;删掉,没有大写的String了,System是.NET   Framework类库中的一个函数名..

  2. 从性质讲:

    1.string是关键字,String是类,string不能作为类、结构、枚举、字段、变量、方法、属性的名称

    2.用C#编写代码的情况下尽量使用小写的string,比较符合规范,如果在追求效率的情况下可以使用大写的String,因为最终通过编译后,小写的string会变成大写的String,可以给编译减少负荷,从而运行效率提高。

    3.string类型表示 Unicode 字符的字符串,string 是 .NET Framework 中的 String 的别名,对字符串相等性的测试更为直观

  3. string详解:

    MSDN中对string的说明:string is an alias for String in the .NET Framework

    呵呵string是String的别名而已,都是一家。

string s = string.Empty:一个指向空字符串的字符串变量, s不占用存储空间.s变量可以使用,比如s.Lengthstring s = "";一个指向"\0"的空字符串, 占用一个字节存储空间,因为转义符\0代表字符串结束.s变量可以使用,比如s.Lengthstring s = null;一个指不向任何一个存储空间的变量,s不可以使用

单个字符分割:

strings="abcdeabcdeabcde";string[]sArray=s.Split('c');foreach(string i insArray)Console.WriteLine(i.ToString());

输出下面的结果:

ab

deab

deab

de

多个字符分割:

strings="abcdeabcdeabcdestring[]sArray1=s.Split(new char[3]{'c','d','e'});foreach(string i insArray1)Console.WriteLine(i.ToString());

可以输出下面的结果:

ab

ab

ab

多个字符分割(正则表达式):

stringcontent="agcsmallmacsmallgggsmallytx";string[]resultString=Regex.Split(content,"small",RegexOptions.IgnoreCase)foreach(string i inresultString)Console.WriteLine(i.ToString());

输出下面的结果:agc

mac

ggg

ytx