次のようなタイト ループ内に switch ステートメントがあります。
switch(true) {
case /*expensive comparison */:
case /*another expensive comparison */:
case /*different expensive comparison */:
return true;
}
return false;
高価な比較のいずれかが正しいかどうかを確認しようとしていますが、1 つだけです。これを達成する他の方法があることは知っていますが、これは見栄えがよくきれいに見えます。本当の問題はexpensive comparison
、true と評価された場合、それも実行さanother expensive comparison
れるのか、それともリターンにジャンプするのかということです。
編集: これは単純な or ステートメントで達成できることを認識していますが、理論のために知りたいです。
return /*expensive comparison */
|| /*another expensive comparison */
|| /*different expensive comparison */;