단락 평가
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!");
}챌린지
쉬움ProcessUserInput이라는 메서드를 만들고 다음 두 인수를 받도록 하세요:
- string (
input) - 정수 (
minLength)
메서드는 다음을 수행해야 합니다:
- input이 null이 아닌지 확인합니다
- input의 길이가 최소
minLength인지 확인합니다 - 두 조건이 모두 참인 경우에만 "Valid input: "을 input 뒤에 이어서 출력합니다
- 어느 한 조건이라도 충족되지 않으면 "Invalid input"을 출력합니다
잠재적인 NullReferenceException을 방지하기 위해 단락 평가를 사용하세요.
직접 해보기
using System;
class ProcessUserInput
{
public static void processUserInput(string input, int minLength)
{
// 여기에 코드를 작성하세요
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
논리 및 흐름의 모든 레슨
직접 연습해 보세요: 온라인 C# 컴파일러