728x90
null 조건부 연산자 ?.
C# 6.0에서 도입된 연산자로, 해당 객체가 null인지 검사하여 그 결과가 참(null)이면 그 결과로 null을 반환하고, 그렇지 않으면 . 뒤의 멤버를 반환해준다.
ArrayList a = null;
a?.Add("A"); // a가 null값이므로 Add 메서드가 실행되지 않는다.
Console.WriteLine($"a에는 {(a == null ? "null" : string.Join(", ", a))}");
ArrayList b = new ArrayList();
b?.Add("B"); // b가 null값이 아니므로 Add 메서드가 실행된다.
Console.WriteLine($"b에는 {(b.Count == 0 ? "비어있음" : string.Join(", ", b.ToArray()))}");
null 병합 연산자 ??
변수/객체의 null 검사를 간결하게 만들어준다. ?? 왼쪽이 null이 아니면 왼쪽을 출력하고, null이면 오른쪽을 출력한다.
int? a1 = null;
Console.WriteLine($"{a1 ?? 0}");
a1 = 99;
Console.WriteLine($"{a1 ?? 0}");
728x90
'🖥️ > C#' 카테고리의 다른 글
[C#] switch문과 switch식 (0) | 2023.08.16 |
---|---|
[이것이 C#이다] Chapter4 연습문제 (0) | 2023.08.16 |
[이것이 C#이다] Chapter3 연습문제 (0) | 2023.08.16 |
[C#] 문자열 서식 맞추기 (Format(), 문자열 보간) (0) | 2023.08.15 |
[C#] 문자열(string) 다루기 (0) | 2023.08.15 |