물음표 "?"는 조건문에서의 사용을 포함하여 프로그래밍에서 다양한 역할을 합니다. 그러나 public int? myProperty
과 같은 값 유형에도 나타납니다. 이 경우 물음표는 무엇을 합니까?
널 입력 가능 유형
값 유형 뒤의 물음표는 null 허용 유형임을 나타냅니다. 널 입력 가능 유형은 기본 유형의 유효한 값 전체 범위와 특수 널 값을 수용할 수 있는 System.Nullable
구조의 특수 인스턴스입니다.
이 기능은 일부 요소에 의도적으로 값이 누락될 수 있는 데이터베이스 시나리오 또는 기타 데이터 소스를 처리할 때 특히 유용합니다. 예를 들어 부울 값을 허용하는 데이터베이스 테이블 열에는 true, false 또는 null이 포함될 수 있습니다.
샘플 코드
다음 코드 조각을 고려하세요.
<code class="language-csharp">class NullableExample { static void Main() { int? num = null; // 判断 HasValue 是否为 true if (num.HasValue) { System.Console.WriteLine("num = " + num.Value); } else { System.Console.WriteLine("num = Null"); } // 如果 num 为 null,则赋值默认值 0 int y = num.GetValueOrDefault(); // 如果 num.HasValue 为 false,则抛出 InvalidOperationException try { y = num.Value; } catch (System.InvalidOperationException e) { System.Console.WriteLine(e.Message); } } }</code>
여기서 num
변수는 정수 또는 Null 값을 담을 수 있는 Null 허용 정수(int?
)로 정의됩니다. HasValue
속성을 사용하면 변수에 유효한 값이 포함되어 있는지 확인할 수 있습니다. HasValue
이 참이면 num.Value
을 사용하여 실제 값을 얻을 수 있습니다. 그렇지 않으면 num
은 null로 간주됩니다.
위 내용은 물음표는 C# 값 유형에서 무엇을 의미합니까 (예 :`int?`)?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!