条件が相互に排他的であるかどうかに応じて、いくつかの考慮事項が適用される場合があります。
条件が相互に排他的である場合、最も簡単な解決策は、戻り値で条件をグループ化することです。
if (condition1 || condition3 || condition4) return 1;
if (condition2 || condition5) return 2;
return 3;
条件が相互に排他的でない場合は、テスト順序で隣り合っている条件のみをグループ化できます。
if (condition1) return 1;
if (condition2) return 2;
if (condition3 || condition4) return 1;
if (condition5) return 2;
return 3;
after a returnは必要ありませんが、 anywayelse
を含むショップが一般的です。else
これはコーディングの標準化の問題であり、コーディング チームが一緒に決定する必要があります。
より凝ったものにしたい場合は、ブロックの配列を作成し、条件を順番にテストし、ブロックによって返された値を返すことができます。これは、最もトリッキーなアプローチです。条件が同じように構造化されていない限り、読みやすさが著しく損なわれ、コードが読者にとって意味のあるものになります。のチェーンはif
常に読み手に意味をなすので、読みやすさで競合するのは非常に困難です。