这两者之间有什么区别,我应该使用哪一个?

string s = "Hello world!";
String s = "Hello world!";

当前回答

表示带变量与带,但在访问其静态成员之一时使用带类:

String.Format()

变量

string name = "";

其他回答

字符串等于 System.String 在 VS2015 如果您写下此:

System.String str;

如何编辑器将显示潜在的修复,以优化它,并在应用该修复后,它将看起来像这个

string str;

使用系统类型使您更容易在 C# 和 VB.Net 之间端口,如果您进入这种类型的东西。

它已被覆盖; 但是,你不能在反射中使用线条; 你必须使用线条。

没有区别。

关键字 C# 连接地图到.NET 类型的 System.String - 这是一个标签,保持到语言的名称公约。

同样, int 地图到 System.Int32.

下面的案例字符串是 System.String 的标志,它们在 C# 中是相同的。

有一个讨论是否应该使用系统类型(System.Int32,System.String等)类型或C#联盟(int, string等)。我个人认为你应该使用C#联盟,但这只是我的个人偏好。