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

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

当前回答

StyleCop 规则,默认情况下,将允许您使用字符串作为一个 C# 代码风格的最佳实践,除非提到 System.String 静态功能,如 String.Format, String.Join, String.Concat 等。

其他回答

String(System.String)是基类图书馆的一个类。 string(下一个案例)是C#的备份工作,这是System.String的标志。 Int32 vs int是一种类似的情况,如Boolean vs. bool. 这些C#语言特定的关键词允许您以类似于C的风格宣布原始性。

两者都是相同的,区别在于你如何使用它。

字符串为变量

String 是为了召唤其他 String 类方法

如:

string fName = "John";
string lName = "Smith";

string fullName = String.Concat(fName,lName);

if (String.IsNullOrEmpty(fName))
{
  Console.WriteLine("Enter first name");
}

线条:一个线条对象被称为不可改变(仅阅读),因为它的值一旦创建,就无法修改。 似乎改变一个线条对象的方法实际上返回一个包含修改的新线条对象。

字符串: 字符串类型代表一个序列的零或多个 Unicode 字符. 字符串是字符串在.NET 框架中的字符串的标志. 字符串是内在的 C# 数据类型,是系统提供的类型“System.String”的标志。

String 与 String 的区别:

您不需要进口名称空间(使用系统;)来使用字符串,因为它是一个全球的名称 System.String。

要了解更多关于 Alias 的信息,您可以查看此链接。

Jeffrey Richter 写道:

另一种方法是C#编译器自动假设您在所有源代码文件中使用下列指南:

using int = System.Int32;
using uint = System.UInt32;
using string = System.String;
...

我已经看到一些开发人员混淆了,不知道是否在他们的代码中使用线条或线条. 因为在C#线条(一个关键词)地图准确到System.String(一个FCL类型),没有区别,也可以使用。