在 .NET 中, 和 之间有什么区别String.Empty,""它们是否可以互换,或者是否存在一些围绕相等性的潜在参考或本地化问题String.Empty可以确保不存在问题?
String.Empty
""
在 .NET 2.0 之前的版本中,""创建对象时string.Empty不创建对象ref,这样string.Empty效率更高。
string.Empty
在 .NET 2.0 及更高版本中,所有出现的 都""指代相同的字符串文字,这意味着""等同于.Empty,但仍不如.Length == 0.
.Empty
.Length == 0
.Length == 0是最快的选择,但.Empty代码更简洁。
有关详细信息,请参阅.NET 规范。