2010-04-29 7 views
7

Null 허용 정수는 무엇이며 어디에 사용할 수 있습니까?.NET에서 Null 가능 정수

+3

ASP.NET (-MVC) 태그는 실제로이 두 가지 기술과 관련이 없으므로 제거되었습니다 (일반적인 .NET 기능). – M4N

+0

.NET 2.0 이후 모든 값 유형은 'int'뿐만 아니라 nullable로 선언 될 수 있습니다. http://msdn.microsoft.com/en-us/library/1t3y8s4s(VS.80).aspx –

답변

15

nullable integer int? 또는 Nullable<int>은 값이 null 또는 정수 값이 될 수있는 C#의 값 유형입니다. 0 대신 기본값은 null이며 value not set (또는 원하는대로 표시 할 수 있음)을 나타내는 데 유용합니다.

+1

VB에서 유효 - Dim myInt As Integer? –

+0

'Dim myint as Nullable of Integer '?? –

0

임가 Nullable<int> x;

속기이 값 유형에 널 (null)을 첨가하는 방법이고, 이러한 값은 같은 널 (null)로 설정 될 수있는 데이터베이스 처리와 같은 상황에서 유용하다 int? x; 의미 가정. 기본적으로 null 입력 가능 유형에는 null이 포함되어 있으며 HasValue를 사용하여 값이 제공되었는지 확인합니다. 값을 할당하고 그렇지 않으면 일반 값 유형처럼 사용할 수 있습니다.

+0

이것은 유효한 C# 구문이 아닙니다. 변수의 타입을 선언하는 대신에'var'을 사용해야합니다. 즉 변수 타입이 사용법에서 추론 될 수있을 때입니다. –

+0

너무 많은 자바 스크립트. 결정된. –

8

nullable integer는 다양한 방법으로 사용될 수 있습니다. 값 또는 널값을 가질 수 있습니다. 좋아요 :

int? myInt = null; 

myInt = SomeFunctionThatReturnsANumberOrNull() 

if (myInt != null) { 
    // Here we know that a value was returned from the function. 
} 
else { 
    // Here we know that no value was returned from the function. 
} 

사람의 나이를 알고 싶다고합시다. 이 사람은 자신의 나이를 제출 한 경우 데이터베이스에 있습니다.

int? age = GetPersonAge("Some person"); 

대부분의 여성과 마찬가지로 그 사람이 자신의 나이를 제출하지 않은 경우 데이터베이스에 null이 포함됩니다.

if (age == null) { 
    // The person did not submit his/her age. 
} 
else { 
    // This is probably a man... ;) 
} 
0

INT :

그럼 당신은 age의 값을 확인? 년;

컨트롤러 액션에 넣을 수 있으며 URL에 연도 매개 변수가 포함되지 않은 경우 연도는 null이되며, 0으로 기본값을 설정하는 대신 응용 프로그램에 유효한 값이 될 수 있습니다.

0

Nullable 유형은 해당 값 유형 및 추가 Null 값을 허용합니다. 값이 할당되지 않은 요소가 포함 된 데이터베이스 및 기타 데이터 유형에는 유용합니다.

0

특정 비즈니스 논리에서 결과 나 결과를 예측할 수 없으면 null 입력 가능 유형으로 이동하십시오.

기본값 유형 (예 : Int)은 null 일 수 없습니다. null 값을 할당하려고 시도하는 동안 오류가 발생합니다. 하지만 nullable 유형은 그렇게하지 않습니다.

감사합니다.

관련 문제