如何在1条语句中解析2个双精度值,而不是2条if语句?
我的代码:
double a, b;
while (true)
{
if (Double.TryParse(Console.ReadLine(), out a))
{
}
else
{
continue;
}
if (Double.TryParse(Console.ReadLine(), out b))
{
}
else
{
continue;
}
break;
}
我已经找过了,但没有找到任何好的结果
发布于 2016-07-25 18:51:16
如下所示:
if (Double.TryParse(Console.ReadLine(), out a)
&& Double.TryParse(Console.ReadLine(), out b))
{
}
else
{
continue;
}
请注意,只有当两个值都成功解析时,才会输入if块。
发布于 2016-07-25 21:58:31
if
在这里是多余的,您不需要它,而且它使用不必要的continue
会降低代码的可读性。
double a, b;
while (!(double.TryParse(Console.ReadLine(), out a) &&
double.TryParse(Console.ReadLine(), out b))
{
}
//a and b successfully parsed.
https://stackoverflow.com/questions/38565748
复制相似问题