728x90
C# 9.0부터 Switch 식에 부등호를 쓸 수 있도록 되었고 and, or, not과 같은 논리 연산이 가능해졌습니다.
먼저 부등호의 사용예시입니다. _ (언더바)는 Default를 의미합니다.
static char GetResult(int score)
{
char result = score switch
{
>= 90 => 'A',
>= 80 => 'B',
>= 70 => 'C',
>= 60 => 'D',
_ => 'F'
};
return result;
}
논리 연산의 예시입니다.
static int GetResult(int grade)
{
int result = grade switch
{
0 or 1 => 10,
> 1 and < 10 => 20,
not 100 => 30,
_ => 40
};
return result;
}
위 구문을 해석해 보면
0,1 인 경우 10
1 에서 10 사이에 있는 경우 20
100 이 아닌 경우 30
마지막 _ 은 모든 조건이 아닌경우 40 (100인 경우만 40이 나옴)
입니다.
또한 이전에 타입 비교 시 is 만 있었지만 is not 쓸 수 있게 되어 아래처럼 사용 가능합니다.
if (value is not TestClass)
{
}
728x90
'C#' 카테고리의 다른 글
[C#] C# 11 - file access modifier (0) | 2023.04.01 |
---|---|
[C#] C# 11 - 복수 라인 처리 (0) | 2023.03.30 |
[C#] Record 란 (0) | 2023.03.28 |
[C#/NATS] Docker NATS 서비스 이용해 Pub/Sub 하기 (0) | 2023.03.28 |
bin obj 폴더 일괄 삭제하기 (0) | 2023.02.19 |