Nullable
- Nullable은 값 형식에도 null 값을 허용하도록 하는 기능입니다.
- 기본적으로 값 형식(int, float, bool 등)은 null값을 가질 수 없지만, nullable을 사용하면 가능해집니다.
Nullable 타입 선언 방법
1.Nullable<T> 제네릭 클래스를 사용:
Nullable<int> nullableInt = null;
2. ?문법을 사용 (더 간단한 표현)
int? nullableInt = null;
Nullable 타입 사용
1. HasValue 속성: 값이 있는지 여부를 확인 (true 또는 false 반환)
if (nullableInt.HasValue) { /* 값이 있음 */ }
2. Value 속성: 실제 값을 가져옴 (null일 때 사용하면 예외 발생)
int value = nullableInt.Value; // null이면 예외 발생
3. ?? 연산자: null일 경우 대체값을 제공
int result = nullableInt ?? 0; // nullableInt가 null이면 0
4. Null-conditional 연산자(?.): null인지 확인하고 안전하게 접근
int? length = nullableString?.Length; // nullableString이 null이면 length도 null
요약
- nullable을 사용하면 값 형식도 null 값을 가질 수 있습니다.
- ?를 사용해 간편하게 선언할 수 있습니다.
- HasValue, Value, ??, ?. 연산자를 사용해 안전하게 nullable 타입을 다룰 수 있습니다.
'C#' 카테고리의 다른 글
[C#] IEnumerable vs IEnumerator (0) | 2024.08.17 |
---|---|
[C#] 제네릭(Generic)이란 무엇인가? (0) | 2024.08.16 |
[C#] 구조체(Struct) vs 클래스(Class) (0) | 2024.08.15 |
[C#] 상속 키워드 (0) | 2024.08.13 |
[C#] API를 호출할 때 "Malformed URL" 오류가 발생하는 이슈 (0) | 2024.08.12 |