这两者之间有什么区别,我应该使用哪一个?
string s = "Hello world!";
String s = "Hello world!";
这两者之间有什么区别,我应该使用哪一个?
string s = "Hello world!";
String s = "Hello world!";
当前回答
正如你所知道的,字符串只是 System.String 的名称,但我应该使用什么?它只是个人偏好。
在我的情况下,我喜欢使用字符串而不是使用 System.String 因为 String 需要使用 System 的名称空间;或者使用 System.String 的全名。
所以我相信 alias string 是为了简单而创建的,我喜欢它!
其他回答
只是为了完整性,这里是一个与相关信息的脑跳动......
正如其他人指出的那样, string 是 System.String 的 alias. 假设使用 String 编译到 System.String 的代码(即您没有使用某些不同的 String 类型的其他名称空间的指令),它们编译到相同的代码,所以在执行时间没有任何差异。
object: System.Object
string: System.String
bool: System.Boolean
byte: System.Byte
sbyte: System.SByte
short: System.Int16
ushort: System.UInt16
int: System.Int32
uint: System.UInt32
long: System.Int64
ulong: System.UInt64
float: System.Single
double: System.Double
decimal: System.Decimal
char: System.Char
在特征中,值类型联盟被称为“简单类型”。字母可以用于每个简单类型的恒定的值;没有其他值类型有字母形式可用。
有一個情況,你必須使用連結:當明確指定一個 enum 的基礎類型。
public enum Foo : UInt32 {} // Invalid
public enum Bar : uint {} // Valid
这只是一个问题,规格如何定义enum声明 - 结尾后的一部分必须是整体类型的生产,这是一个标志的sbyte, byte, short, ushort, int, uint, long, ulong, char......相反的类型的生产,用于变量声明,例如,它不表明任何其他差异。
字符串是一种序列的字符集,用于代表文本。
序列对象是代表序列的 System.Char 对象的序列集,而 System.Char 对象与 UTF-16 代码单位相匹配。
String 对象的值是 System.Char 对象的序列收藏的内容,这个值是不可改变的(即它仅是阅读的)。
有关线条不变性的更多信息,请参见MSDN中的不变性和StringBuilder类部分。
内存中的 String 对象的最大尺寸为 2GB 或大约 1 亿个字符。
注意 : 答案是从 msdn 帮助部分提取的. 在 msdn String Class 主题中,您可以在此处查看完整内容。
图像结果为 string vs String www.javatpoint.com 在 C# 中, string 是.NET 框架中的 string 类的 alias. 事实上,每个 C# 类型都有.NET 的同等值. 另一个小差异是,如果你使用 string 类,你需要进口系统名称空间,而你不需要在使用 string 关键词时进口名称空间。
字符串和字符串之间的微小差异在C#. 字符串只是系统的标志. 字符串. 两个字符串和字符串都是以相同的方式编写的. 答案是非常简单的. 字符串是关键词提供有限的功能,主要使用字符串创建变量如(字符串名称 = “Abrar”). 或者我们可以说这是一个数据类型我们使用特殊的字符串。
StyleCop 规则,默认情况下,将允许您使用字符串作为一个 C# 代码风格的最佳实践,除非提到 System.String 静态功能,如 String.Format, String.Join, String.Concat 等。