可能重复:
In C# what is the difference between String and string
String vs string in C#
您好,
任何人都可以告诉我下面两行代码之间的区别:
public const String sample = "Sample";
public const string sample2 = "Sample2";
“String”和“string”都是System.String。
提前致谢。
答案 0 :(得分:1)
这些数据类型完全相同,因为string只是String类的别名。如果你看一下,有类似的大写和非大写的int,float和类似的类。
查看here以获得更详细的答案。
答案 1 :(得分:0)
有相同的
string是C#for .Net System.String中的别名,类似于int表示Int32,long表示int64等。编译期间C#字符串被System.String替换
答案 2 :(得分:0)
没有什么区别 - 实际上你可以编写以下代码:
String sample = "Sample";
string sample2 = sample;
两者都映射到相同的IL字符串类型
答案 3 :(得分:0)
String代表System.String,它是.NET Framework类型。 string是System.String的C#语言中的别名。它们都被编译为IL(中间语言)中的System.String,因此没有区别。选择你喜欢的并使用它。如果你用C#编写代码,我更喜欢字符串,因为它是C#类型的别名,并且是C#程序员所熟知的。
答案 4 :(得分:0)
String是CTS类型,但string是c#string object。
您可以将String用于任何dot net语言。
答案 5 :(得分:0)
答案 6 :(得分:0)
String是CLR内置字符串类型的.NET类。 string是映射到CLR String类型的C#语言标识符。他们是一回事。
答案 7 :(得分:0)
“string”实际上是System.String的别名。他们是一样的。
尝试:
typeof(string) == typeof(String) == typeof(System.String)
答案 8 :(得分:0)
没有什么,在C#中,类型关键字实际上是类型的同义词。所以int = System.Int32 short = System.Int16和string = System.String。
他们有关键字,因为它们更容易记住,来自其他语言(如c / c ++)的程序员也熟悉这些类型。
无论如何,看看C#关键字参考,你可以找到这些东西。这取自字符串关键字引用。
字符串类型表示Unicode字符的字符串。 string是.NET Framework中String的别名。字符串是不可变的 - 在创建对象后,不能更改字符串对象的内容。