这两者之间有什么区别,我应该使用哪一个?
string s = "Hello world!";
String s = "Hello world!";
这两者之间有什么区别,我应该使用哪一个?
string s = "Hello world!";
String s = "Hello world!";
当前回答
字符串是一种序列的字符集,用于代表文本。
序列对象是代表序列的 System.Char 对象的序列集,而 System.Char 对象与 UTF-16 代码单位相匹配。
String 对象的值是 System.Char 对象的序列收藏的内容,这个值是不可改变的(即它仅是阅读的)。
有关线条不变性的更多信息,请参见MSDN中的不变性和StringBuilder类部分。
内存中的 String 对象的最大尺寸为 2GB 或大约 1 亿个字符。
注意 : 答案是从 msdn 帮助部分提取的. 在 msdn String Class 主题中,您可以在此处查看完整内容。
其他回答
字符串是保留的单词,但字符串只是一个类名称,这意味着字符串本身不能作为变量名称使用。
如果出于某种原因,你想要一个变量称为字符串,你只会看到这些编辑中的第一个:
StringBuilder String = new StringBuilder(); // compiles
StringBuilder string = new StringBuilder(); // doesn't compile
如果你真的想要一个变量名称,称为字符串,你可以使用 @ 作为预定:
StringBuilder @string = new StringBuilder();
另一个关键差异:Stack Overflow以不同的方式突出它们。
事实上,每个 C# 类型都有一个相当于.NET. 作为另一个例子,在 C# 地图中简短和 int 到 Int16 和 Int32 在.NET. 因此,技术上没有线和线之间的区别,但在 C# 中,线是.NET 框架中的线类的标志。
一个很好的方式来谈论它是线条是一个数据类型,在那里线条是一个类型,每一个都有不同的方法,使用哪一个取决于你的需要。
字符串不是一个关键词,它可以用作识别器,而字符串是一种关键词,不能用作识别器。
字符串是一种序列的字符集,用于代表文本。
序列对象是代表序列的 System.Char 对象的序列集,而 System.Char 对象与 UTF-16 代码单位相匹配。
String 对象的值是 System.Char 对象的序列收藏的内容,这个值是不可改变的(即它仅是阅读的)。
有关线条不变性的更多信息,请参见MSDN中的不变性和StringBuilder类部分。
内存中的 String 对象的最大尺寸为 2GB 或大约 1 亿个字符。
注意 : 答案是从 msdn 帮助部分提取的. 在 msdn String Class 主题中,您可以在此处查看完整内容。