2017-07-22 1 views
0

は:ブール値がtrueの場合にのみ、特定の行のコードを実行するのが最も効率的です。私は、次のように見えたコードがあった場合

if (bool1) { 
    statement1 
    statement2 
} else if (bool2) { 
    statement3 
    statement4 
} 

をし、私は別のブール(bool3言う)特定の文2と4を実行したいことをフォーマットするための最良の方法は何か、本当です。私はネストされたifステートメントを追加することができると理解していますが、5つ以上のelse ifがある場合、保守性の観点から悪いようです。

提案がありますか?

+0

bool3のif条件を別に設定することができます。それが私が考える最も効率的なものです。だから、もしあなたが条件を満たすとすれば、合計は3になります。 5つのif文が間違っていないことを理解し、誤ったトラップに該当する場合を除きます。 –

答えて

0

ネストされたifは、少なくとも私にとって完全に素晴らしい音です。しかしbool1、bool3とbool4と文の混乱のどれもが、あなたが本当にネストされた使用することをしたくない場合は、接続詞でお互いの後にそれらを置くことができIFS:

if (bool1) { 
    statement1 
} 
if (bool1 && bool3) { 
    statement2 
} 
if (bool2 && !bool1) { 
    statement3 
} 
if (bool2 && !bool1 && bool3) { 
    statement4 
} 

ので、私はちょうど行くだろうが、これはひどい見えます単純で単純なネストされたif。

関連する問題