【发布时间】:2014-12-18 05:05:12
【问题描述】:
好的,我正在将某人的代码从 VB.Net 转换为 C#。我想知道是否将字符串设置为“”,是否与将其设置为 null 相同?比如下面的代码:
string word = "";
bool boolValue = false;
if(string == null)
{
boolValue = true;
}
那么这最终会将 boolValue 设置为 true,还是将 word 设置为 "" 或 null 两个不同的东西?我的直觉告诉我这是不同的。那个 "" 只是使它成为一个空字符串。
【问题讨论】:
-
你为什么不试着找出答案?
-
在这个主题上,一个鲜为人知的函数是
string.IsNullOrEmpty(myString),它可以测试两种情况。还有string.IsNullOrWhiteSpace额外测试空白。 -
@alykins 实际上它们是不同的。
IsNullOrWhiteSpace将为字符串" "返回 true,而IsNullOrEmpty返回 false。 -
@Jared.Rodgers 这个网站实际上通常鼓励你在来这里之前尝试并失败。这可能就是你得到一堆反对票的原因。我不介意帮助别人学习,但只是尝试一下就有很多话要说(在这种情况下:很容易做到)。