C#里面的string和String有什么区别?

来源:百度知道 编辑:UC知道 时间:2024/06/06 17:57:58
string a = "gaga";
String b="gaga";

if (a == b)
Console.Write("ok");
else
Console.Write("no");
System.Threading.Thread.Sleep(1000);

结果输出为ok,两个完全一样 的吗?

string是c#中的类,String是.net Framework的类(在c# IDE中不会显示蓝色)
c# string映射为.net Framework的String
如果用string,编译器会把它编译成String,所以如果直接用String就可以让编译器少做一点点工作
如果使用c#,建议使用string,比较符合规范
string始终代表 System.String(1.x) 或 ::System.String(2.0) ,String只有在前面有using System;的时候并且当前命名空间中没有名为String的类型(class、struct、delegate、enum)的时候才代表 System.String
string是关键字,String不是,也就是说string不能作为类、结构、枚举、字段、变量、方法、属性的名称,而String可以

http://msdn.microsoft.com/zh-cn/developercenters/system.string.aspx
上面的是官方的链接,LZ可以去看看
不是吧string不能作为类、结构、枚举、字段、变量、方法、属性的名?我什么时候都是用string,我基本上没用过String
那看来我写的程序都错了···VS2005和2008都给我过了···

总之我觉得就一样,用的不过是一个别名而已

C#
public static void Main(string[] args)
{
string a = "aaa";
Console.WriteLine(a);
}

Reflector处理后
VB.NET
Public Shared Sub Main(ByVal args As Stri