c#中String和string 怎么用?有什么区别?

c#中String和string 怎么用?有什么区别?

第1个回答  2009-03-20
String与string是相同的,为了书写方便所以有两个,String会被识别为类,显示为绿色,string会被识别为关键字,显示为蓝色
第2个回答  2009-03-20
http://msdn.microsoft.com/zh-cn/developercenters/system.string.aspx
上面的是官方的链接,LZ可以去看看

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

Reflector处理后
VB.NET
Public Shared Sub Main(ByVal args As String())
Dim a As String = "aaa"
Console.WriteLine(a)
End Sub

.NET平台这些关键字都是通用的,string不过是String的别名而已
当然有语言之间的一点区别

看看官方工具的反汇编
.method public hidebysig static void Main(string[] args) cil managed
{
.entrypoint
// 代码大小 15 (0xf)
.maxstack 1
.locals init ([0] string a)
IL_0000: nop
IL_0001: ldstr "aaa"
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: call void [mscorlib]System.Console::WriteLine(string)
IL_000d: nop
IL_000e: ret
} // end of method Program::Main
这个是用string的IL代码
然后我把string修改为String
结果呢?
.method public hidebysig static void Main(string[] args) cil managed
{
.entrypoint
// 代码大小 15 (0xf)
.maxstack 1
.locals init ([0] string a)
IL_0000: nop
IL_0001: ldstr "aaa"
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: call void [mscorlib]System.Console::WriteLine(string)
IL_000d: nop
IL_000e: ret
} // end of method Program::Main
string和String在C#中用的都是“string”本回答被网友采纳
第3个回答  2009-03-20
基本上没什么区别。。。string可以算是String的引用吧
第4个回答  2009-03-21
没太大的区别吧.
第5个回答  2009-03-20
String是类型的名称
string是c#的关键字

C#中 String 和 string 有什么区别
1.string是c#中的类,String是.net Framework的类 2.c#的string映射为.net Framework的String 3.如果用string,编译器会把它编译成String,所以如果直接用String就可以让编译器少做一点点工作,如果使用c#,建议使用string,比较符合规范 4.String始终代表 System.String(1.x) 或 ::System.String(2.0...

c#中string和string的区别是什么
1.string是关键字,String是类,string不能作为类、结构、枚举、字段、变量、方法、属性的名称 2.用C#编写代码的情况下尽量使用小写的string,比较符合规范,如果在追求效率的情况下可以使用大写的String,因为最终通过编译后,小写的string会变成大写的String,可以给编译减少负荷,从而运行效率提高。3.string...

c#string和string的区别
如果使用C#,建议使用string,比较符合规范 。 string始终代表 System.String(1.x) 或 ::System.String(2.0) ,String只有在前面有using System;的时候并且当前命名空间中没有名为String的类型(class、struct、delegate、enum)的时候才代表System.String。string是c#中的类,String是.net Framework的类(...

在C#中string 和String到底有没有区别
在C#中,string 是 System.String 的别名,所以基本上在使用时是没有差别的。习惯上,我们把字符串当作对象时(有值的对象实体),我们用string。而我们把它当类时(需要字符串类中定义的方法),我们用String,比如:string greet = String.Format("Hello {0}!", place)。其实乱用也可以,只是这样...

在C#中 string 和 String有什么区别
String是整个.net环境下的字符串类型,string是在C#中对String起的别名,使用上没有任何区别。就像Int32和int一样,也是这种情况

C#中String和string有什么区别?详细点
1.String是一个类,string是一种数据类型.2.装箱是把值类型转换成引用类型,比如 int a;Object o = a;\/\/装箱 拆箱就是转换回来 int b = (int)o;\/\/拆箱 注意:C#中规定,拆箱必须拆成装箱时的类型,不然报错.

在C#中string 和String到底有没有区别
string是C#中System.String的别名,一般情况下二者具有相同的含义和功能,这个问题纯粹是概念上和理解上的问题,对您的编程技巧没有实质的帮助。如果你想再深入了解它们之间的关系的话,看下面:string s = “Hello, World.”;String S = “Hello, World.”;在含义上相当于是using string = System....

C#中的String和string有什么区别?还有ref关键字怎么用?
String 和 string 没有区别 string 是 String 的别名 ref 关键字一般只用于函数参数中,这个参数是 struct 类型,而不是 class 类型 因为 class 类型在函数中引用实例指针,所以函数内部对该参数的操作等于直接操作原实例 而 struct 类型在函数中引用数据复本,只有用指明 ref 关键字,它才会引用指针, ...

在C#中String 和string有什么区别
string是关键字,映射了System.String FCL类型 使用上两者之间没有任何不同 但是似乎MS说过他们是不同的 如果不同点在于string为值类型而String为引用类型,除了可以String str = new String("a",10);这样用法上的区别之外,好象没有什么区别 1.String是一个类,string是一种数据类型.

C#中String和string有什么区别?
String是公共语言运行时(CLR)中的实现类型,像VB,C++中的字符串类型最终都会编译成此类型,C#中字符串类型是String,而string是C#中字符串类型String的反射,可以理解为一种简化的书写方式,就像int对应于Int32一样,二者在C#中可通用

相似回答
大家正在搜