次のコードサンプルが与えられた場合、より良いと思いますか、これをより洗練された方法でコーディングする別の方法が考えられますか?重複したコードの場合または重複した条件の場合
if(a || b) {
doAB();
}
if(b) {
doB();
}
重複コード(2回doAB())(2回 'B' をチェックする)場合で
重複条件:
if(a) {
doAB();
}
if(b) {
doAB();
doB();
}
または混合...
if(a || b) {
doAB();
if(b) {
doB();
}
}
編集:
同僚は、この提案された:私は最初のものを推測してい
int mask = a?1:b?2:0;
switch(mask) {
case 2:
doB();
case 1:
doAB();
}
何をしますか? –
2つ目のスニペットは機能的に間違っている可能性があります。なぜなら 'a'と' b'の両方が真であれば 'doAB()'を2回呼び出すからです。 – Eran
私は重複したコード –