可能重复:
In C#, should I use string.Empty or String.Empty or “” ?C#优化返回一个空字符串
是更好地
return string.Empty;
,而不是
return "";
您怎么看?
可能重复:
In C#, should I use string.Empty or String.Empty or “” ?C#优化返回一个空字符串
是更好地
return string.Empty;
,而不是
return "";
您怎么看?
编译完成后两者完全相同。我发现string.Empty
更具可读性。对于我们所知的""
真的应该有一些东西,它只是一个错字。
一旦编译器完成该代码,两个片段的IL /机器代码将是相同的。如果空字符串是算法的重要组成部分,我倾向于使用string.Empty
。我倾向于使用""
作为任何值,但现在它恰好是空字符串。换句话说,使用传达表达意图的那个。
根据this MSDN blog poststring.Empty
更有效,因为它不会产生新的对象。
Here是一些更多的信息,包括一个简短的性能比较。
是的,但它是.NET 2.0之前的版本:http://stackoverflow.com/questions/151472/what-is-the-difference-between-string-empty-and ;-) – 2010-08-20 20:50:48
博客帖子不正确。字符串文字仅在装入程序集时创建一次(就像String.Empty属性的字符串对象一样),执行使用字符串字符串的代码不会创建对象。 – Guffa 2010-08-20 20:53:40
此外,当您确实需要空字符串“”时,很难发现类似“'”的错字。 – Guffa 2010-08-20 20:58:54