Nullable Nullable Nullable Nullable Class

Определение

Поддерживает тип значения, который можно присвоить null.Supports a value type that can be assigned null. Этот класс не наследуется.This class cannot be inherited.

public ref class Nullable abstract sealed
[System.Runtime.InteropServices.ComVisible(true)]
public static class Nullable
type Nullable = class
Public Class Nullable
Наследование
NullableNullableNullableNullable
Атрибуты

Комментарии

Тип считается обнуляемым, если ему может быть присвоено значение или его можно присвоить null. Это означает, что тип не имеет значения.A type is said to be nullable if it can be assigned a value or can be assigned null, which means the type has no value whatsoever. По умолчанию все ссылочные типы, такие Stringкак, допускают значение null, но все типы Int32значений, такие как, не являются.By default, all reference types, such as String, are nullable, but all value types, such as Int32, are not.

В C# и Visual Basic тип значения помечается как допускающий значение NULL с ? помощью нотации после типа значения.In C# and Visual Basic, you mark a value type as nullable by using the ? notation after the value type. Например, int? в C# или Integer? в Visual Basic объявляет тип целочисленного значения, который может быть назначен null.For example, int? in C# or Integer? in Visual Basic declares an integer value type that can be assigned null.

Класс предоставляет дополнительную поддержку Nullable<T> для структуры. NullableThe Nullable class provides complementary support for the Nullable<T> structure. Nullable Класс поддерживает получение базового типа типа, допускающего значение null, а также операции сравнения и равенства с парами типов, допускающих значение null, базовый тип которых не поддерживает универсальные операции сравнения и равенства.The Nullable class supports obtaining the underlying type of a nullable type, and comparison and equality operations on pairs of nullable types whose underlying value type does not support generic comparison and equality operations.

Упаковка–преобразование и распаковка–преобразованиеBoxing and Unboxing

Когда тип, допускающий значение null, упаковывается, среда CLR автоматически боксет базовое Nullable<T> значение объекта, а Nullable<T> не сам объект.When a nullable type is boxed, the common language runtime automatically boxes the underlying value of the Nullable<T> object, not the Nullable<T> object itself. То есть, если HasValue свойство имеет trueзначение Value , содержимое свойства упаковывается.That is, if the HasValue property is true, the contents of the Value property is boxed. Если свойство имеет falseзначение, null упаковывается. HasValueIf the HasValue property is false, null is boxed. Если базовое значение типа, допускающего значение null, является распакованным, среда CLR создает новую Nullable<T> структуру, инициализированную базовым значением.When the underlying value of a nullable type is unboxed, the common language runtime creates a new Nullable<T> structure initialized to the underlying value.

Методы

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

Сравнивает значения двух объектов Nullable<T>.Compares the relative values of two Nullable<T> objects.

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

Указывает, равны ли два указанных объекта типа Nullable<T>.Indicates whether two specified Nullable<T> objects are equal.

GetUnderlyingType(Type) GetUnderlyingType(Type) GetUnderlyingType(Type) GetUnderlyingType(Type)

Возвращает аргумент заданного базового типа, допускающего значение NULL.Returns the underlying type argument of the specified nullable type.

Применяется к

Дополнительно