次のようなメソッドに if ステートメントがあるとします。
if ( foo() || bar() ) {
return true;
}
foo()
内部でコードを実行するかどうかを評価する前に、両方bar()
とも完全に処理されますか、それとも if の 1 つの条件が満たされるとすぐに処理されますか?
私が質問する理由は、foo()
およびbar()
メソッドに相当するものはかなり計算コストの高い関数であり、foo()
単独で if 条件を満たしている場合は を実行したくないからですbar()
。そのため、私の現在のコードは次の行に沿っています。
if ( foo() ) {
return true;
}
if ( bar() ) {
return true;
}
これは必要ですか、または論理 OR で区切られた関数は必須として動作しますか?