Auf Englisch lesen

Freigeben über


Nullable<T> Struktur

Definition

Stellt einen Werttyp dar, der null zugewiesen werden kann.

public struct Nullable<T> where T : struct
[System.Serializable]
public struct Nullable<T> where T : struct

Typparameter

T

Der zugrunde liegende Werttyp des generischen Nullable<T>-Typs.

Vererbung
Nullable<T>
Attribute

Beispiele

Im folgenden Codebeispiel werden drei Zeilen einer Tabelle in der Microsoft Pubs-Beispieldatenbank definiert. Die Tabelle enthält zwei Spalten, für die kein NULL-Wert zulässig ist, und zwei Spalten, die NULL-Werte zulassen.

using System;

class Sample
{
    // Define the "titleAuthor" table of the Microsoft "pubs" database.
    public struct titleAuthor
    {
      // Author ID; format ###-##-####
      public string au_id;
      // Title ID; format AA####
      public string title_id;
      // Author ORD is nullable.
      public short? au_ord;
      // Royalty Percent is nullable.
      public int? royaltyper;
    }

    public static void Main()
    {
      // Declare and initialize the titleAuthor array.
      titleAuthor[] ta = new titleAuthor[3];
      ta[0].au_id = "712-32-1176";
      ta[0].title_id = "PS3333";
      ta[0].au_ord = 1;
      ta[0].royaltyper = 100;

      ta[1].au_id = "213-46-8915";
      ta[1].title_id = "BU1032";
      ta[1].au_ord = null;
      ta[1].royaltyper = null;

      ta[2].au_id = "672-71-3249";
      ta[2].title_id = "TC7777";
      ta[2].au_ord = null;
      ta[2].royaltyper = 40;

      // Display the values of the titleAuthor array elements, and
      // display a legend.
      Display("Title Authors Table", ta);
      Console.WriteLine("Legend:");
      Console.WriteLine("An Author ORD of -1 means no value is defined.");
      Console.WriteLine("A Royalty % of 0 means no value is defined.");
    }

    // Display the values of the titleAuthor array elements.
    public static void Display(string dspTitle,
                               titleAuthor[] dspAllTitleAuthors)
    {
      Console.WriteLine("*** {0} ***", dspTitle);
      foreach (titleAuthor dspTA in dspAllTitleAuthors) {
         Console.WriteLine("Author ID ... {0}", dspTA.au_id);
         Console.WriteLine("Title ID .... {0}", dspTA.title_id);
         Console.WriteLine("Author ORD .. {0}", dspTA.au_ord ?? -1);
         Console.WriteLine("Royalty % ... {0}", dspTA.royaltyper ?? 0);
         Console.WriteLine();
      }
    }
}
// The example displays the following output:
//     *** Title Authors Table ***
//     Author ID ... 712-32-1176
//     Title ID .... PS3333
//     Author ORD .. 1
//     Royalty % ... 100
//
//     Author ID ... 213-46-8915
//     Title ID .... BU1032
//     Author ORD .. -1
//     Royalty % ... 0
//
//     Author ID ... 672-71-3249
//     Title ID .... TC7777
//     Author ORD .. -1
//     Royalty % ... 40
//
//     Legend:
//     An Author ORD of -1 means no value is defined.
//     A Royalty % of 0 means no value is defined.

Hinweise

Weitere Informationen zu dieser API finden Sie unter Ergänzende API-Hinweise für Nullable<T>.

Konstruktoren

Nullable<T>(T)

Initialisiert eine neue Instanz der Nullable<T>-Struktur mit dem angegebenen Wert.

Eigenschaften

HasValue

Ruft einen Wert ab, der angibt, ob das aktuelle Nullable<T>-Objekt einen gültigen Wert des zugrunde liegenden Typs hat.

Value

Ruft den Wert des aktuellen Nullable<T>-Objekts ab, wenn ihm ein gültiger zugrunde liegender Wert zugewiesen wurde.

Methoden

Equals(Object)

Gibt an, ob das aktuelle Nullable<T>-Objekt einem angegebenen Objekt entspricht.

GetHashCode()

Ruft den Hashcode des Objekts ab, das von der Value-Eigenschaft zurückgegeben wird.

GetValueOrDefault()

Ruft den Wert des aktuellen Nullable<T>-Objekts oder den Standardwert des zugrunde liegenden Typs ab.

GetValueOrDefault(T)

Ruft den Wert des aktuellen Nullable<T>-Objekts oder den angegebenen Standardwert ab.

ToString()

Gibt die Textdarstellung des Werts des aktuellen Nullable<T>-Objekts zurück.

Operatoren

Explicit(Nullable<T> to T)

Definiert eine explizite Konvertierung einer Nullable<T>-Instanz in den zugrunde liegenden Wert.

Implicit(T to Nullable<T>)

Erstellt ein neues Nullable<T>-Objekt, das mit einem angegebenen Wert initialisiert wurde.

Gilt für:

Produkt Versionen
.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, 10
.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

Weitere Informationen