为什么这个三元运算失败
本文关键字:三元 运算 失败 为什么 | 更新日期: 2023-09-27 18:20:52
我有两段代码,一段使用if条件,另一段使用?操作人员
两者在同一功能范围内相继定义。但是语句使用了?运算符抛出编译错误?这段代码有问题吗。
if (IsCount)
filterParameterOriginTime.Values = new[] { new DateTime(2013, 7, 1).ToString() };
else
filterParameterOriginTime.Values = new[] { lastPollTime.ToString() };
// IsCount ? filterParameterOriginTime.Values = new[] { new DateTime(2013, 7, 1).ToString() } : filterParameterOriginTime.Values = new[] { lastPollTime.ToString() };
简单地说,你有一个向后的操作符,试试这个:
filterParameterOriginTime.Values = IsCount
? new[] { new DateTime(2013, 7, 1).ToString() }
: new[] { lastPollTime.ToString() };
也就是说,Henk提出了一个关于可读性的好观点。目标是可读代码,而不是不必要的简洁代码。在大多数情况下,我通常倾向于if
语句。
filterParameterOriginTime.Values = IsCount ? new[] { new DateTime(2013, 7, 1).ToString() } : new[] { lastPollTime.ToString() };