반응형
Nullable 타입(?)
- int, short, float, .... 등의 데이터 형식에 null 값을 허용하지 않지만 Nullable 타입을 사용하면 null 값이 허용
- ?(물음표) 또는 Nullable<T>로 사용할 수 있지만 ?(물음표) 사용을 권장
int i = null; // 오류
int? i = null; // null 가능
Nullable<int> i = null; // 두 번째 코드와 동일
Null 조건 연산자(?.)
- ?(물음표) 앞의 객체가 Null이면 Null을 리턴
- ?(물음표) 앞의 객체가 Null이 아니면 .(점) 다음 코드를 실행
List<int> list = null;
int? count = list?.Count;
Console.WriteLine($"count: {count}");
List<int> list = new List<int>();
int? count = list?.Count;
Console.WriteLine($"count: {count}");
?? 연산자
- Null 조건 연산자의 ?(물음표) 앞의 객체가 Null이면 ?? 연산자 뒤의 값을 리턴
List<int> list = null;
int? count = list?.Count ?? 1;
Console.WriteLine($"count: {count}");
반응형
'C#' 카테고리의 다른 글
C# 클래스 형변환과 is, as (0) | 2021.12.23 |
---|---|
C# 클래스 상속과 오버라이드 그리고 추상화 (0) | 2021.12.23 |
C# 십진수를 이진수로 출력 (0) | 2021.12.21 |
C# 이스케이프 시퀀스와 @ 기호 (0) | 2021.12.21 |
C# 변수와 메모리 (0) | 2021.12.21 |