如果浮点数的语句

本文关键字:语句 浮点数 如果 | 更新日期: 2023-09-27 18:32:49

如何使用

浮点数制作 If 语句?我拥有的代码如下:

{float p1 = float.Parse(textBox1.Text);
if (p1 == ""){MessageBox.Show("Home");}}

第二行的 p1 if 语句不起作用。我如何为此做出适当的 if 陈述?

编辑:我应该解释一下。目标是检查一个空框。我不能使用字符串命令,因为我希望它来解释数字。

提前感谢您的帮助。

如果浮点数的语句

float值不能为"空"。如果尝试将空字符串解析为float,则会收到运行时错误。

您需要在解析之前检查字符串是否为空,然后使用不引发异常的更"保守"的TryParse方法进行分析。

if (string.IsNullOrWhitespace(textBox1.Text)) {
    MessageBox.Show("Home");
}
float p1;
if (!float.TryParse(textBox1.Text, out p1)) {
    MessageBox.Show("textBox1 is not a float");
}

注意:通常,将相等的float==运算符进行比较不是一个好主意,因为float不是精确的表示形式。本问答讨论了Java中的问题,但该问题与使用浮点表示的所有语言都相关。

如果您尝试检查它是否能够成功解析textBox1.Text中的float值,请改用TryParse,如下所示:

float p1;
if (float.TryParse(textBox1.Text, out p1))
{
    MessageBox.Show("Home");
}

如果您只是尝试检查空文本框,则可以改为执行以下操作:

if (!String.IsNullOrEmpty(textBox1.Text))
{
    // Now we can try to parse p1 (assuming it's a valid number)
    float p1 = float.Parse(textBox1.Text);
    MessageBox.Show("Home");
}

请注意,您还必须以这种方式处理无效字符(例如字母、符号或空格)。