다음을 통해 공유


Nullable<T>.Value 속성

정의

올바른 내부 형식 값이 할당된 경우 현재 Nullable<T> 개체의 값을 가져옵니다.

public:
 property T Value { T get(); };
public T Value { get; }
member this.Value : 'T
Public ReadOnly Property Value As T

속성 값

T

Nullable<T> 속성이 true이면 현재 HasValue 개체의 값이고, HasValue 속성이 false이면 예외가 throw됩니다.

예외

HasValue 속성은 false입니다.

예제

다음 예제에서는 (Nullable(Of Integer)Visual Basic) 개체의 Nullable<int> 속성을 사용 하 여 HasValue 개체의 Value 속성 또는 해당 GetValueOrDefault 속성을 표시 해야 하는지 여부를 결정 합니다.

using System;

public class Example
{
   public static void Main()
   {
      Nullable<int> n1 = new Nullable<int>(10);
      Nullable<int> n2 = null;
      Nullable<int> n3 = new Nullable<int>(20);
      n3 = null;
      Nullable<int>[] items = { n1, n2, n3 };

      foreach (var item in items) {
         Console.WriteLine("Has a value: {0}", item.HasValue);
         if (item.HasValue) {
            Console.WriteLine("Type: {0}", item.GetType().Name);
            Console.WriteLine("Value: {0}", item.Value);
         }
         else {
            Console.WriteLine("Null: {0}", item == null);
            Console.WriteLine("Default Value: {0}", item.GetValueOrDefault());
         }
         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//       Has a value: True
//       Type: Int32
//       Value: 10
//
//       Has a value: False
//       Null: True
//       Default Value: 0
//
//       Has a value: False
//       Null: True
//       Default Value: 0
open System

let n1 = Nullable 10
let n2 = Nullable()
let mutable n3 = Nullable 20
n3 <- Nullable()
let items = [| n1; n2; n3 |]

for item in items do
    printfn $"Has a value: {item.HasValue}"
    if item.HasValue then
        printfn $"Type: {item.GetType().Name}"
        printfn $"Value: {item.Value}"
    else
        printfn $"Null: {item = Nullable()}"
        printfn $"Default Value: {item.GetValueOrDefault()}"
    printfn ""
// The example displays the following output:
//       Has a value: True
//       Type: Int32
//       Value: 10
//
//       Has a value: False
//       Null: True
//       Default Value: 0
//
//       Has a value: False
//       Null: True
//       Default Value: 0
Module Example
   Public Sub Main()
      Dim n1 As New Nullable(Of Integer)(10)
      Dim n2 As Nullable(Of Integer)
      Dim n3 As New Nullable(Of Integer)(20)
      n3 = Nothing
      Dim items() As Nullable(Of Integer) = { n1, n2, n3 }

      For Each item In items
         Console.WriteLine("Has a value: {0}", item.HasValue)
         If item.HasValue Then
            Console.WriteLine("Type: {0}", item.GetType().Name)
            Console.WriteLine("Value: {0}", item.Value)
         Else
            Console.WriteLine("Null: {0}", item Is Nothing)
            Console.WriteLine("Default Value: {0}", item.GetValueOrDefault())
         End If
         Console.WriteLine()
      Next                  
   End Sub
End Module
' The example displays the following output:
'       Has a value: True
'       Type: Int32
'       Value: 10
'       
'       Has a value: False
'       Null: True
'       Default Value: 0
'       
'       Has a value: False
'       Null: True
'       Default Value: 0

설명

형식 T 값이 개체에 Nullable<T> 할당되지 않은 경우 개체와 비교하여 null 해당 HasValue 속성을 검색할 수 있지만 해당 Value 속성에 액세스하거나 다른 멤버를 호출할 수는 없습니다.

적용 대상