0

私はプログラミングに少し慣れていません。ウェブと私が学んでいる本の両方で読んだいくつかの情報源に基づいて、IFTHENとSELECTCASEの条件文が何であるかを定義できますが、なぜ私が一方を他方の上に使用するのか、そしてどのベストプラクティスがこれを決定するのかについての比較をすることができませんでした。

これらの条件文を正しく理解している場合、どちらも一連の条件に基づいており、これらの条件を満たすことに基づいた結果が得られます。条件が満たされない場合は、別の結果を定義できます。

IF THENステートメントを使用する場合、SELECT CASEステートメントを使用する場合、およびこの決定を定義するために使用されるベストプラクティスを理解するのに問題があります。

これに関する洞察をいただければ幸いです。

4

3 に答える 3

3

それは非常に簡単です:

  • THENが一般的な条件(ブール条件)に使用される場合
  • SELECT CASEは、式の値(値に解決される)に応じてさまざまなことを実行する場合に使用されます。ステートメントがより読みやすく、より効率的にコンパイルできるため、さまざまな値に対して複数の選択肢がある場合に役立ちます。仕方

同じ式のチェーンで3〜4を超えるif / elseステートメントを使用していることがわかった場合は、通常、case命令を使用することをお勧めします。

于 2012-09-05T03:35:10.880 に答える
1

基本的に、両方でまったく同じことを行うことができます。大量のifステートメントを書いていることに気付いた場合:
if
else if
else if
else
ifelseif
など。。

次に、switchcaseブロックを記述します。コードがもう少し読みやすくなります。技術的にはどちらでもコードを機能させることができますが、約4程度のifステートメントの後にswitchcaseブロックを使用するのが一般的です。

于 2012-09-05T03:34:43.273 に答える
0

SELECT...CASEと条件の実際の違いはIf/Then/Else、If / Then / Elseで複数の異なる条件を使用できることと、それに対応して、各If/ElseIf条件の構成要素の変数値を再評価する必要があることです。各CASE条件付きは、単一​​の評価のみを実行できるため、コンパイラーによって、条件変数に対して単一の評価のみを実行するように最適化されます。変数を評価する必要があるたびに、それはメモリ位置へのトリップを意味します。最近のシステムでは、これは非常に高速に発生しますが、数百万のトランザクションを最適化する場合、各トリップはメモリレーン数をカウントダウンします。これが理にかなっていることを願っています。

于 2012-09-05T03:34:50.707 に答える