条件付きリファクタリングとロジックリファクタリング

Visual Studioには、条件付きステートメントとロジック演算子を操作するためのリファクタリングがいくつか用意されています。 これらのリファクタリングには、[クイック アクションとリファクタリング] メニュー (Ctrl+.

if ステートメントを switch ステートメントまたは switch 式に変換する

適用対象: C#

このリファクタリングでは、 if ステートメントを switch ステートメント または C# 8.0 スイッチ式に変換します。その逆も同様です。 if ステートメントがswitchとしてより明確になる場合に便利です。

  1. if キーワードにカーソルを置きます。

  2. Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。

  3. 次のいずれかのオプションを選択してください。

    • [ Convert to 'switch" ステートメントを選択します

      Convert if ステートメントを switch ステートメントに変換するのスクリーンショット。

    • [ 変換] を [switch] 式に選択します

      Convert if ステートメントを switch 式に変換するスクリーンショット。

switch ステートメントを switch 式に変換する

適用対象: C#

このリファクタリングでは、 switch ステートメント を C# 8.0 スイッチ式に変換します。その逆も同様です。 式のみを使用している場合は、switch 式により簡潔な構文が提供されます。

  1. switch キーワードにカーソルを置きます。

  2. Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。

  3. [ switch ステートメントを式に変換] を選択します

    Switch ステートメントを switch 式に変換するスクリーンショット。

if文を反転する

Applies to: C#, Visual Basic

このリファクタリングにより、コードの意味を変更することなく、 if または if else ステートメントが反転されます。 反転されたフォームが理解しやすい場合に便利です。

  1. ifまたはif elseステートメントにカーソルを置きます。

    それ以外の場合は反転のスクリーンショット。

  2. Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。

    それ以外のコードが修正された場合の反転のスクリーンショット。

  3. [ 反転する場合] を選択します。

    それ以外の場合の反転の結果のスクリーンショット。

条件付き式と条件付き AND/OR 演算子を反転する

Applies to: C#, Visual Basic

このリファクタリングにより、条件式または条件 AND/OR 演算子が反転されます。 反転されたフォームを理解しやすくし、手動で反転を実行する際のエラーを回避する場合に便利です。

  1. 条件付き式または条件 AND/OR 演算子にカーソルを置きます。

  2. Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。

  3. [ 条件付き反転 ] を選択するか、 '> を '||' に置き換えます

    [条件付き反転] オプションのスクリーンショット。

    || に置き換えるのスクリーンショットオプション。

if ステートメントを分割またはマージする

Applies to: C#, Visual Basic

このリファクタリングでは、&&または||演算子を使用するif ステートメントを入れ子になったif ステートメントに分割するか、内部ifステートメントを外側のif ステートメントとマージします。

if ステートメントを分割する

  1. &&または || 演算子によって、if ステートメントにカーソルを置きます。

  2. Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。

    Split If ステートメントのスクリーンショット。

  3. [ 入れ子になった if ステートメントに分割] を選択します。

    Split If ステートメントの完了のスクリーンショット。

if ステートメントをマージする

  1. 内側の if キーワードにカーソルを置きます。

  2. Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。

    Merge If ステートメントのスクリーンショット

  3. [ 外部 if ステートメントでマージ] を選択します。

    Merge If ステートメントの完了のスクリーンショット。

条件式を簡略化する

適用対象: C#

このリファクタリングにより、不要なコードを削除して、より明確で簡潔な構文を提供することで、 条件式 が簡略化されます。

  1. 条件式にカーソルを置く。

  2. Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。

  3. [ 条件式の簡略化] を選択します。

    [条件式の簡略化] のスクリーンショット。