gpt4 book ai didi

C# 字符串 - 为什么 null 给我的结果与 ""不同?

转载 作者:行者123 更新时间:2023-11-30 19:06:42 24 4
gpt4 key购买 nike

我设置了 2 个表单。在第一种形式中,我有以下代码。

frm_BL addBranch = new frm_BL();

do
{
addBranch.ShowDialog();
if (addBranch.txtAmount.Text == "")
{
break;
}

} while (true);

在主窗体中。而这只是第二种形式。

private void btnAccept_Click(object sender, EventArgs e)
{
this.Close();
}

但是我发现如果我把主窗体的代码改成:

 if (addBranch.txtAmount.Text == null) //changed to null

第二种形式不断弹出。但如果它停留在

if (addBranch.txtAmount.Text == "") 

它关闭表单。有人可以解释为什么会这样吗?

最佳答案

最好的方法是:

if (String.IsNullOrEmpty(addBranch.txtAmount.Text))

txtAmount.Text 属性是一个包含文本框内容的字符串。如果文本框为空,则它是一个零长度字符串。

检查是否与 null 相等是说“如果文本框没有字符串 ...”,这将始终为 false。正确的检查条件是“如果文本框的字符串为空...”。

使用 IsNullOrEmpty 方法检查这两个条件。在这种情况下,字符串永远不应为空,但检查也无妨。

请注意,"" 是一个空字符串(相当于 String.Empty),而 null 表示该字符串不存在。

关于C# 字符串 - 为什么 null 给我的结果与 ""不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10005028/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com