速度方面,它不会有所作为……不是一个明显的…订单确实计数(将最常用的条件放在第一位的速度明显更快),但它并不重要.选择为修改和维护代码提供最佳可读性的顺序.他们以后会感谢你的.
编辑:
另外,考虑一下:
我的功能将以25%的几率返回.
我更喜欢写作:
if ( $chance25 )
return;
else if ( $chance40 )
doSomething();
else if ( $chance30 )
doSomethingElse();
else if ( $chance5 )
doSomethingElse2();
而不是:
if ( $chance40 )
doSomething();
else if ( $chance30 )
doSomethingElse();
else if ( $chance25 )
return;
else if ( $chance5 )
doSomethingElse2();
它的功能更好……
EDIT2:
一种尺寸并不适合所有人.如果您的条件是返回布尔值的方法,请根据方法运行的速度和机会来排序它们.我想这不是一个好的答案,你需要适应.例如,如果我的$chance25被替换为方法reallySlowMethodDoNotUseUnlessYouReallyHaveTo(),我肯定会最后检查它. :d