我有以下代码:
IList<object> testList = null;
...
if (testList != null) // <- how to get rid of this check?
{
foreach (var item in testList)
{
//Do stuff.
}
}
有没有办法在
if
之前避免 foreach
?我看到了一些解决方案,但是在使用 List
时,是否有使用 IList
的解决方案? 最佳答案
好吧,你可以试试 ??
操作符:
testList ?? Enumerable.Empty<object>()
我们得到
testList
本身或一个空的 IEnumerable<object>
:IList<object> testList = null;
...
// Or ?? new object[0] - whatever empty collection implementing IEnumerable<object>
foreach (var item in testList ?? Enumerable.Empty<object>())
{
//Do stuff.
}
关于c# - 如何避免在foreach IList之前进行空检查,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58952656/