例子(注意案例)。
string s = "Hello world!";
String s = "Hello world!";
各自使用的准则是什么?又有哪些的区别***?
string
是C#中System.String
的一个别名。
所以从技术上讲,没有什么区别。 这就像int
vs. System.Int32
。
就准则而言,一般建议在引用一个对象时使用string
。
例如
string place = "world";
同样地,我认为如果你需要特别指代类,一般建议使用String
。
例如
string greet = String.Format("Hello {0}!", place);
现在看来,这方面的指导可能已经改变了,因为StyleCop现在强制要求使用C#的特定别名。
System.String
是.NET的字符串类 - 在C#中string
是System.String
的别名 - 所以在使用上它们是一样的。
至于准则,我不会太过纠结,只要使用你觉得合适的就可以了--生活中还有更重要的事情,反正代码都是一样的。
如果你发现自己建立的系统有必要指定你所使用的整数的大小,所以倾向于使用Int16
、Int32
、UInt16
、UInt32
等,那么使用String
可能看起来更自然--当在不同的.net语言之间移动时,它可能使事情更容易理解--否则我会使用string和int。