多个if块或单个if条件

Ram*_*Ram 4 c# coding-style

如果我需要检查多个条件,这是性能方面的首选方式

if( CND1 && CND2 && CND3 && CND4)
{
}
else
{
}
Run Code Online (Sandbox Code Playgroud)

要么

  if(CND1)
{
   if(CND2)
   {
      if(CND3)
      {
         if(CND4)
         {
         }
         else
         {
         }
      }
      else
      {
      }
   }  
else
   {
   }
}
    }
Run Code Online (Sandbox Code Playgroud)

nic*_*ckf 5

性能是相同的,因为一旦找到错误的参数(短路)它将停止检查参数,所以肯定与第一个一起.它与one,10相比是一条线.这也意味着你else将更容易处理.

  • 为什么会有*任何*性能差异? (2认同)