【问题标题】:C# String.Empty [duplicate]C# String.Empty [重复]
【发布时间】:2010-12-13 13:47:53
【问题描述】:

可能重复:
What is the difference between String.Empty and “”

你好

简单的问题;

为什么

Textbox1.Text = String.Empty;

优于

Textbox1.Text = "";

?

【问题讨论】:

标签: c#


【解决方案1】:

不是,真的。

基本上,决定哪个更易读。我个人使用""而不是string.Empty,但其他人更喜欢后者。

在 .NET 1.x 时代,显然存在一些微小的性能差异(在实际应用中几乎肯定不相关),但我相信这些天甚至已经消失了。

使用你认为最易读的那个。

【讨论】:

    【解决方案2】:

    因为 String.Empty 实际上定义为 ""

    最佳实践要求不要使用字符串文字,而是使用常量。

    有趣的是:String.Empty 是/看起来更面向对象的 ISH。

    【讨论】:

    • 在有意义的地方,使用常量......但文字可以代替它们。例如,您是否使用int.Zero 而不是 0?
    • 我从来不知道那里有int.Zero。我将不得不使用它,因为我现在可以,但不是真的。 除非零值可能会在未来发生变化......或在另一种文化中?......听起来像是呆伯特漫画的好素材。
    • @Jon 我认为只有当它们是 0 或 1 时,数字才可以“按原样”使用。其他任何东西都应该保持不变。所以这就是我不使用 int.Zero 的原因。但是我对字符串的感觉不一样。但这些都是指导方针而不是规则,因此它们并不总是 100% 适用,但通常是 99% 的时间。
    • 为什么?除非您能解释为什么这是最佳实践,否则诉诸最佳实践毫无意义。对于常量,通常的原因是不想在多个地方使用相同的值,因为这使得以后很难更改该值。该原因不适用于string.Empty,因为您无法更改...如果您有多个地方想灵活地使用相同的逻辑值,请务必创建一个常量字段......但使用string.Empty 在这里没有提供“最佳实践”的好处。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-11
    • 2011-09-07
    • 2013-01-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多