Movatterモバイル変換


[0]ホーム

URL:


Skip to main contentSkip to in-page navigation

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Download Microsoft EdgeMore info about Internet Explorer and Microsoft Edge
Table of contentsExit focus mode

Nullable<T>.HasValue Property

Definition

Namespace:
System
Assemblies:
mscorlib.dll, System.Runtime.dll
Assemblies:
netstandard.dll, System.Runtime.dll
Assembly:
System.Runtime.dll
Assembly:
mscorlib.dll
Assembly:
netstandard.dll
Source:
Nullable.cs
Source:
Nullable.cs
Source:
Nullable.cs
Source:
Nullable.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Gets a value indicating whether the currentNullable<T> object has a valid value of its underlying type.

public: property bool HasValue { bool get(); };
public bool HasValue { get; }
member this.HasValue : bool
Public ReadOnly Property HasValue As Boolean

Property Value

true if the currentNullable<T> object has a value;false if the currentNullable<T> object has no value.

Examples

The following example uses theHasValue property of aNullable<int> (Nullable(Of Integer) in Visual Basic) object to determine whether it should display the object'sValue property or itsGetValueOrDefault property.

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 Systemlet n1 = Nullable 10let n2 = Nullable()let mutable n3 = Nullable 20n3 <- 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 SubEnd 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

Remarks

If theHasValue property istrue, the value of the currentNullable<T> object can be accessed with theValue property. Otherwise, attempting to access its value throws anInvalidOperationException exception.

Applies to

Collaborate with us on GitHub
The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, seeour contributor guide.

Feedback

Was this page helpful?

YesNo

In this article

Was this page helpful?

YesNo