Nullable 類別

定義

支援可以指派 null 的實值類型。 此類別無法獲得繼承。

public ref class Nullable abstract sealed
public static class Nullable
[System.Runtime.InteropServices.ComVisible(true)]
public static class Nullable
type Nullable = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type Nullable = class
Public Class Nullable
繼承
Nullable
屬性

備註

如果類型可以指派值或可指派 null ,則類型稱為可為 Null,這表示類型沒有任何值。 根據預設,所有參考型別,例如 String 都是可為 Null 的,但並非所有實值型別,例如 Int32

在 C# 和 Visual Basic 中,您可以使用實值型別之後的 ? 標記法,將實值型別標示為可為 Null。 例如, int? 在 C# 或 Integer? Visual Basic 中,宣告可指派的 null 整數實值型別。

類別 Nullable 提供 結構的互補支援 Nullable<T> 。 類別 Nullable 支援取得可為 Null 型別的基礎型別,以及在基礎實值型別不支援泛型比較和相等運算的可為 Null 型別配對上比較和相等運算。

Boxing 和 Unboxing

當 Boxed 可為 Null 的型別時,Common Language Runtime 會自動對物件的基礎值 Nullable<T> 進行 Box 處理,而不是 Nullable<T> 物件本身。 也就是說,如果 HasValue 屬性是 true ,則會 Boxed 屬性的內容 Value

HasValue如果可為 Null 類型的 屬性為 false ,Boxing 作業的結果會是 null 。 當可為 Null 型別的基礎值未收件匣時,Common Language Runtime 會建立初始化為基礎值的新 Nullable<T> 結構。

方法

Compare<T>(Nullable<T>, Nullable<T>)

比較兩個 Nullable<T> 物件的相對值。

Equals<T>(Nullable<T>, Nullable<T>)

表示兩個指定的 Nullable<T> 物件是否相等。

GetUnderlyingType(Type)

傳回已指定可為 null 型別的基礎型別引數。

GetValueRefOrDefaultRef<T>(Nullable<T>)

擷取儲存值之 實例中 Nullable<T> 位置的唯讀參考。

適用於

另請參閱