我想更好地组织以下两个if
声明:
if(A || B){
do stuff...
}
if(A && ! B){
do other stuff...
}
有更好的方法吗?
编辑:!
在第二次发言前B
,抱歉......
答案 0 :(得分:6)
if( A || B ) {
do some stuff;
if( !B ) {
do other stuff;
}
}
但好处取决于使用情况,可能更难理解这个版本。
答案 1 :(得分:2)
对于原始问题,第二个条件是A&& B,我的回答是:
如果没有别的,您可以将第二个块嵌套在第一个块内,以防止在第一个条件失败时进行不必要的评估。否则,我没有看到任何缩短此方法的好方法......并且嵌套假定第一个块中的代码不会更新A和B,它可能会更新。
对于新问题,我的回答是在第一个检查!B,并省略第二个块的块中嵌入一个块。这相当于为新问题提供的另一个答案。