Nullable<T>.GetValueOrDefault Method
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.
Retrieves the value of the current Nullable<T> object, or a default value.
GetValueOrDefault() |
Retrieves the value of the current Nullable<T> object, or the default value of the underlying type. |
GetValueOrDefault(T) |
Retrieves the value of the current Nullable<T> object, or the specified default value. |
The following code example retrieves the value of a Nullable<T> object if that value is defined; otherwise, it retrieves the default value or a specific default value.
// This code example demonstrates the
// Nullable<T>.GetValueOrDefault methods.
using System;
class Sample
{
public static void Main()
{
float? mySingle = 12.34f;
float? yourSingle = -1.0f;
Console.WriteLine("*** Display a value or the default value ***\n");
// Display the values of mySingle and yourSingle.
Display("A1", mySingle, yourSingle);
// Assign the value of mySingle to yourSingle, then display the values
// of mySingle and yourSingle. The yourSingle variable is assigned the
// value 12.34 because mySingle has a value.
yourSingle = mySingle.GetValueOrDefault();
Display("A2", mySingle, yourSingle);
// Assign null (Nothing in Visual Basic) to mySingle, which means no value is
// defined for mySingle. Then assign the value of mySingle to yourSingle and
// display the values of both variables. The default value of all binary zeroes
// is assigned to yourSingle because mySingle has no value.
mySingle = null;
yourSingle = mySingle.GetValueOrDefault();
Display("A3", mySingle, yourSingle);
// Reassign the original values of mySingle and yourSingle.
mySingle = 12.34f;
yourSingle = -1.0f;
Console.Write("\n*** Display a value or the ");
Console.WriteLine("specified default value ***\n");
// Display the values of mySingle and yourSingle.
Display("B1", mySingle, yourSingle);
// Assign the value of mySingle to yourSingle, then display the values
// of mySingle and yourSingle. The yourSingle variable is assigned the
// value 12.34 because mySingle has a value.
yourSingle = mySingle.GetValueOrDefault(-222.22f);
Display("B2", mySingle, yourSingle);
// Assign null (Nothing in Visual Basic) to mySingle, which means no value is
// defined for mySingle. Then assign the value of mySingle to yourSingle and
// display the values of both variables. The specified default value of -333.33
// is assigned to yourSingle because mySingle has no value.
mySingle = null;
yourSingle = mySingle.GetValueOrDefault(-333.33f);
Display("B3", mySingle, yourSingle);
}
// Display the values of two nullable of System.Single structures.
// The Console.WriteLine method automatically calls the ToString methods of
// each input argument to display its values. If no value is defined for a
// nullable type, the ToString method for that argument returns the empty
// string ("").
public static void Display(string title, float? dspMySingle, float? dspYourSingle)
{
Console.WriteLine("{0}) mySingle = [{1}], yourSingle = [{2}]",
title, dspMySingle, dspYourSingle);
}
}
/*
This code example produces the following results:
A1) mySingle = [12.34], yourSingle = [-1]
A2) mySingle = [12.34], yourSingle = [12.34]
A3) mySingle = [], yourSingle = [0]
*** Display a value or the specified default value ***
B1) mySingle = [12.34], yourSingle = [-1]
B2) mySingle = [12.34], yourSingle = [12.34]
B3) mySingle = [], yourSingle = [-333.33]
*/
// This code example demonstrates the
// Nullable<T>.GetValueOrDefault methods.
open System
// Display the values of two nullable of System.Single structures.
// The printfn string interpolation automatically calls the ToString methods of
// each input argument to display its values. If no value is defined for a
// nullable type, the ToString method for that argument returns the empty
// string ("").
let display title dspMySingle dspYourSingle =
printfn $"{title}) mySingle = [{dspMySingle}], yourSingle = [{dspYourSingle}]"
let mySingle = Nullable 12.34f
let yourSingle = Nullable -1f
[<EntryPoint>]
let main _ =
printfn "*** Display a value or the default value ***\n"
// Display the values of mySingle and yourSingle.
display "A1" mySingle yourSingle
// Shadow the value of mySingle to yourSingle, then display the values
// of mySingle and yourSingle. The yourSingle variable is assigned the
// value 12.34 because mySingle has a value.
let yourSingle = mySingle.GetValueOrDefault()
display "A2" mySingle yourSingle
// Shadow null (Nothing in Visual Basic) to mySingle, which means no value is
// defined for mySingle. Then assign the value of mySingle to yourSingle and
// display the values of both variables. The default value of all binary zeroes
// is assigned to yourSingle because mySingle has no value.
let mySingle = Nullable()
let yourSingle = mySingle.GetValueOrDefault()
display "A3" mySingle yourSingle
// Shadow the original values of mySingle and yourSingle.
let mySingle = Nullable 12.34f
let yourSingle = Nullable -1.0f
printf "\n*** Display a value or the "
printfn "specified default value ***\n"
// Display the values of mySingle and yourSingle.
display "B1" mySingle yourSingle
// Shadow the value of mySingle to yourSingle, then display the values
// of mySingle and yourSingle. The yourSingle variable is assigned the
// value 12.34 because mySingle has a value.
let yourSingle = mySingle.GetValueOrDefault -222.22f
display "B2" mySingle yourSingle
// Shadow null (Nothing in Visual Basic) to mySingle, which means no value is
// defined for mySingle. Then shadow the value of mySingle to yourSingle and
// display the values of both variables. The specified default value of -333.33
// is assigned to yourSingle because mySingle has no value.
let mySingle = Nullable()
let yourSingle = mySingle.GetValueOrDefault -333.33f
display "B3" mySingle yourSingle
0
// This code example produces the following results:
// A1) mySingle = [12.34], yourSingle = [-1]
// A2) mySingle = [12.34], yourSingle = [12.34]
// A3) mySingle = [], yourSingle = [0]
//
// *** Display a value or the specified default value ***
//
// B1) mySingle = [12.34], yourSingle = [-1]
// B2) mySingle = [12.34], yourSingle = [12.34]
// B3) mySingle = [], yourSingle = [-333.33]
' This code example demonstrates the
' Nullable(Of T).GetValueOrDefault methods.
Class Sample
Public Shared Sub Main()
Dim mySingle As Nullable(Of System.Single) = 12.34F
Dim yourSingle As Nullable(Of System.Single) = - 1.0F
Console.WriteLine("*** Display a value or the default value ***" & vbCrLf)
' Display the values of mySingle and yourSingle.
Display("A1", mySingle, yourSingle)
' Assign the value of mySingle to yourSingle, then display the values
' of mySingle and yourSingle. The yourSingle variable is assigned the
' value 12.34 because mySingle has a value.
yourSingle = mySingle.GetValueOrDefault()
Display("A2", mySingle, yourSingle)
' Assign null (Nothing in Visual Basic) to mySingle, which means no value is
' defined for mySingle. Then assign the value of mySingle to yourSingle and
' display the values of both variables. The default value of all binary zeroes
' is assigned to yourSingle because mySingle has no value.
mySingle = Nothing
yourSingle = mySingle.GetValueOrDefault()
Display("A3", mySingle, yourSingle)
' Reassign the original values of mySingle and yourSingle.
mySingle = 12.34F
yourSingle = - 1.0F
Console.Write(vbCrLf & "*** Display a value or the ")
Console.WriteLine("specified default value ***" & vbCrLf)
' Display the values of mySingle and yourSingle.
Display("B1", mySingle, yourSingle)
' Assign the value of mySingle to yourSingle, then display the values
' of mySingle and yourSingle. The yourSingle variable is assigned the
' value 12.34 because mySingle has a value.
yourSingle = mySingle.GetValueOrDefault(- 222.22F)
Display("B2", mySingle, yourSingle)
' Assign null (Nothing in Visual Basic) to mySingle, which means no value is
' defined for mySingle. Then assign the value of mySingle to yourSingle and
' display the values of both variables. The specified default value of -333.33
' is assigned to yourSingle because mySingle has no value.
mySingle = Nothing
yourSingle = mySingle.GetValueOrDefault(- 333.33F)
Display("B3", mySingle, yourSingle)
End Sub
' Display the values of two nullable of System.Single structures.
' The Console.WriteLine method automatically calls the ToString methods of
' each input argument to display its values. If no value is defined for a
' nullable type, the ToString method for that argument returns the empty
' string ("").
Public Shared Sub Display(ByVal title As String, _
ByVal dspMySingle As Nullable(Of System.Single), _
ByVal dspYourSingle As Nullable(Of System.Single))
If (True) Then
Console.WriteLine("{0}) mySingle = [{1}], yourSingle = [{2}]", _
title, dspMySingle, dspYourSingle)
End If
End Sub
End Class
'
'This code example produces the following results:
'
'A1) mySingle = [12.34], yourSingle = [-1]
'A2) mySingle = [12.34], yourSingle = [12.34]
'A3) mySingle = [], yourSingle = [0]
'
'*** Display a value or the specified default value ***
'
'B1) mySingle = [12.34], yourSingle = [-1]
'B2) mySingle = [12.34], yourSingle = [12.34]
'B3) mySingle = [], yourSingle = [-333.33]
'
- Source:
- Nullable.cs
- Source:
- Nullable.cs
- Source:
- Nullable.cs
Retrieves the value of the current Nullable<T> object, or the default value of the underlying type.
public:
T GetValueOrDefault();
public T GetValueOrDefault ();
public readonly T GetValueOrDefault ();
member this.GetValueOrDefault : unit -> 'T
Public Function GetValueOrDefault () As T
Returns
The value of the Value property if the HasValue property is true
; otherwise, the default value of the underlying type.
Remarks
The GetValueOrDefault method returns a value even if the HasValue property is false
(unlike the Value property, which throws an exception). If the HasValue property is false
, the method returns the default value of the underlying type.
See also
Applies to
.NET 9 and other versions
Product | Versions |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1 |
UWP | 10.0 |
- Source:
- Nullable.cs
- Source:
- Nullable.cs
- Source:
- Nullable.cs
Retrieves the value of the current Nullable<T> object, or the specified default value.
public:
T GetValueOrDefault(T defaultValue);
public T GetValueOrDefault (T defaultValue);
public readonly T GetValueOrDefault (T defaultValue);
member this.GetValueOrDefault : 'T -> 'T
Public Function GetValueOrDefault (defaultValue As T) As T
Parameters
- defaultValue
- T
A value to return if the HasValue property is false
.
Returns
The value of the Value property if the HasValue property is true
; otherwise, the defaultValue
parameter.
Remarks
The GetValueOrDefault method returns a value even if the HasValue property is false
(unlike the Value property, which throws an exception).
See also
Applies to
.NET 9 and other versions
Product | Versions |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1 |
UWP | 10.0 |
.NET feedback
.NET is an open source project. Select a link to provide feedback: