Menu
Coddy logo textTech

短絡評価

CoddyのC#ジャーニー「ロジックとフロー」セクションの一部。レッスン 36/66。

短絡評価は C# における最適化技法で、論理 AND(&&)演算子および OR(||)演算子の 2 番目のオペランドが必要な場合にのみ評価されます。

論理 AND(&&)では、最初のオペランドが false の場合、2 番目のオペランドに関係なく、結果は常に false になります。

bool result = false && SomeMethod();

この例では、最初のオペランドがすでに false であるため、SomeMethod() は呼び出されません。

論理 OR(||)では、最初のオペランドがtrueの場合、2 番目のオペランドに関係なく、結果は常にtrueになります。

bool result = true || SomeMethod();

ここでは、最初のオペランドがすでにtrueであるため、SomeMethod()は呼び出されません。

この動作を利用して、オブジェクトのプロパティにアクセスする前に null かどうかを確認するなど、エラーを防ぐことができます:

// 安全 - student が null の場合、右側は評価されません
if (student != null && student.Grade > 70)
{
    Console.WriteLine("Student passed!");
}
challenge icon

チャレンジ

簡単

ProcessUserInputという名前のメソッドを作成し、2つの引数を受け取るようにします。

  • 文字列(input
  • 整数(minLength

このメソッドでは、次の処理を行います。

  1. input が null でないか確認する
  2. input の長さが少なくとも minLength 以上か確認する
  3. 両方の条件が true の場合のみ、"Valid input: " に続けて input を出力する
  4. いずれかの条件を満たさない場合は、"Invalid input" を出力する

潜在的な NullReferenceException を防ぐために、短絡評価を使用してください。

自分で試してみよう

using System;

class ProcessUserInput
{
    public static void processUserInput(string input, int minLength)
    {
        // ここにコードを書いてください
    }
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ロジックとフローのすべてのレッスン

自分で練習してみよう: C#オンラインコンパイラ