在最近使用 ReSharper 时,建议我通过反转if
条件和使用continue
语句来减少某些地方的嵌套。
嵌套条件:
foreach(....)
{
if(SomeCondition)
{
//do some things
if(SomeOtherNestedCondition)
{
//do some further things
}
}
}
继续声明:
foreach(....)
{
if(!SomeCondition) continue;
//do some things
if(!SomeOtherNestedCondition) continue;
//do some further things
}
我理解您为什么要减少嵌套以解决性能和内存问题的一些逻辑,以及这两个片段如何相互等同,但是从我的开发背景来看,在阅读代码时,前面的示例更容易理解。
您更喜欢哪种方法,为什么?您是否continue
在日常代码中使用过嵌套的 ifs?