【发布时间】:2015-07-20 10:42:50
【问题描述】:
我想知道我是否可以缩短这个:
bool Check()
{
return textBox1.Text.All(char.IsDigit) ? true : Falsepath();
}
bool Falsepath()
{
MessageBox.Show("The data you entered is incorrect","Error",MessageBoxButtons.OK);
return false;
}
到这样的事情:
bool Check()
{
return textBox1.Text.All(char.IsDigit) ? true : (sender, e) =>
{
MessageBox.Show("The data you entered is incorrect", "Error", MessageBoxButtons.OK);
return false;
};
}
当然,我输入的第二个代码不正确,但我以它为例。
那么,我可以在检查某些内容时执行代码还是必须使用单独的函数?
【问题讨论】:
-
否 - 三元运算符期望 2 个结果是完全相同的类型。
-
有
if运算符,使用它。不要以不正确的方式滥用语法糖。 -
@General-Doomer
if是一个关键字。?是一个运算符 -
算子、键、语句……没关系。使用它,而不是带有 Func
或其他东西的丑陋构造。