我如何使用浮点数来制作If语句?我的代码如下:如果声明为浮动?
{float p1 = float.Parse(textBox1.Text);
if (p1 == ""){MessageBox.Show("Home");}}
第二行的p1 if语句不起作用。我如何为此做出适当的陈述?
编辑:我应该解释。目标是检查一个空盒子。我不能使用字符串命令,因为我想要解释数字。
在此先感谢您的帮助。
我如何使用浮点数来制作If语句?我的代码如下:如果声明为浮动?
{float p1 = float.Parse(textBox1.Text);
if (p1 == ""){MessageBox.Show("Home");}}
第二行的p1 if语句不起作用。我如何为此做出适当的陈述?
编辑:我应该解释。目标是检查一个空盒子。我不能使用字符串命令,因为我想要解释数字。
在此先感谢您的帮助。
如果您正试图检查它是否能够从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");
}
注意,你也将不得不处理无效字符这种方式(如字母,符号或空格)。
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
S代表平等==
运营商是不是一个好主意,因为float
不是一个精确的表示。 This Q&A讨论了Java中的问题,但是这个问题在所有使用浮点表示的语言中都是相关的。
第二行应该表示什么意思?你正在检查一个空白的文本框? – 2014-12-02 04:21:27