Menu
Coddy logo textTech

단락 평가

Coddy C# 여정의 논리 및 흐름 섹션에 포함된 레슨. 66개 중 36번째.

단락 평가(short-circuit evaluation)는 논리 AND(&&) 및 OR(||) 연산자의 두 번째 피연산자를 필요한 경우에만 평가하는 C#의 최적화 기법입니다.

논리 AND(&&)의 경우 첫 번째 피연산자가 false이면 두 번째 피연산자와 관계없이 결과는 항상 false입니다.

bool result = false && SomeMethod();

이 예제에서는 첫 번째 피연산자가 이미 false이므로 SomeMethod()가 호출되지 않습니다.

논리적 OR(||)의 경우 첫 번째 피연산자가 true이면 두 번째 피연산자와 관계없이 결과는 항상 true입니다.

bool result = true || SomeMethod();

여기서는 첫 번째 피연산자가 이미 true이므로 SomeMethod()가 호출되지 않습니다.

이 동작은 객체의 속성에 액세스하기 전에 객체가 null인지 확인하는 것처럼 오류를 방지하는 데 사용할 수 있습니다:

// 안전 - student가 null이면 오른쪽은 평가되지 않음
if (student != null && student.Grade > 70)
{
    Console.WriteLine("Student passed!");
}
challenge icon

챌린지

쉬움

ProcessUserInput이라는 메서드를 만들고 다음 두 인수를 받도록 하세요:

  • string (input)
  • 정수 (minLength)

메서드는 다음을 수행해야 합니다:

  1. input이 null이 아닌지 확인합니다
  2. input의 길이가 최소 minLength인지 확인합니다
  3. 두 조건이 모두 참인 경우에만 "Valid input: "을 input 뒤에 이어서 출력합니다
  4. 어느 한 조건이라도 충족되지 않으면 "Invalid input"을 출력합니다

잠재적인 NullReferenceException을 방지하기 위해 단락 평가를 사용하세요.

직접 해보기

using System;

class ProcessUserInput
{
    public static void processUserInput(string input, int minLength)
    {
        // 여기에 코드를 작성하세요
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

논리 및 흐름의 모든 레슨

직접 연습해 보세요: 온라인 C# 컴파일러