private void button1_Click(object sender, EventArgs e)
{
double temp = double.Parse(textBox1.Text);
if (temp < 0)
{
label2.Text = "Freezing.";
}
if (temp > 40)
{
label2.Text = "Hot.";
}
else
{
label2.Text = "Moderate.";
}
}
问问题
58 次
2 回答
3
每当将用户输入或任何形式的 String 类型转换为对象时,我总是喜欢使用 TryParse(...),因为如果出现问题,它可以为您提供更好的控制。
double temp = 0.0d;
var converted = double.TryParse(textBox1.Text, out temp);
if (!converted) throw new Exception("Please enter a positive or negative temperature.");
if (temp < 0.0d)
{
// Freezing
}
else if (temp >= 0.0d && temp < 40.0d)
{
// Moderate
}
else if (temp >= 40.0d)
{
// Hot
}
于 2013-11-15T00:55:25.640 回答
1
关键是找出读入的值是什么temp
。如果它带来负数,那么我建议更改下面的代码。它真正做的是如果第一个不正确,那么它检查第二个,如果两者都不正确,最后它使用第三个。
private void button1_Click(object sender, EventArgs e)
{
double temp = double.Parse(textBox1.Text);
if (temp < 0)
{
label2.Text = "Freezing.";
}
else if (temp > 40)
{
label2.Text = "Hot.";
}
else
{
label2.Text = "Moderate.";
}
}
于 2013-11-15T00:48:26.863 回答