Aracılığıyla paylaş


NULL olabilecek türleri (C# Programlama Kılavuzu)

Null türleridir örneklerini System.Nullable<T> yapı.Null olabilecek tür doğru temel değer türü artı ek bir değer aralığını temsil edebilir null değeri.Örneğin, bir Nullable<Int32>, İngilizce "Null değeri, Int32," atanabilir herhangi bir değer-2147483648 2147483647 için veya atanmış olmak null değeri.A Nullable<bool> değerler atanabilir doğruyanlış, veya null. Atama yetkisi null veritabanları ve diğer veri türlerini içeren bir değer atanmamış öğeler ile uğraşırken sayısal ve Boole türleri için kullanışlıdır.Örneğin, veritabanında Boole alan değerleri saklayabilir true veya false, veya tanımlanmamış olabilir.

class NullableExample
{
    static void Main()
    {
        int? num = null;
        if (num.HasValue == true)
        {
            System.Console.WriteLine("num = " + num.Value);
        }
        else
        {
            System.Console.WriteLine("num = Null");
        }

        // y is set to zero
        int y = num.GetValueOrDefault();

        // num.Value throws an InvalidOperationException if num.HasValue is false
        try
        {
            y = num.Value;
        }
        catch (System.InvalidOperationException e)
        {
            System.Console.WriteLine(e.Message);
        }
    }
}

Örnek çıktı görüntülenir:

num = Null

Nullable object must have a value.

Daha fazla örnek için bkz.NULL olabilecek türleri (c Programlama Kılavuzu #) kullanarak

Boş değer atanabilir türlerine genel bakış

NULL değeri türleri aşağıdaki özelliklere sahiptir:

  • Null türü değeri atanan değer türü değişkenleri temsil null.Başvuru türüne göre bir null değeri türü oluşturulamıyor.(Başvuru türleri zaten Destek null değeri.)

  • Sözdizimi T? için kestirme olduğu Nullable<T>, T bir deðer türüdür.İki şeylerdir.

  • Sıradan bir değer türü için örneğin gibi bir null değeri türü için bir değer atamak int? x = 10; veya double? d = 4.108.Null olabilecek tür değeri atanabilir null: int? x = null.

  • Kullanım Nullable<T>.GetValueOrDefault değeri ise atanan değeri veya temel türü için varsayılan değer döndürmek için yöntemini null, örneğin int j = x.GetValueOrDefault();

  • Kullanım HasValue ve Value için null sınamak ve aşağıdaki örnekte gösterildiği gibi değerini almak için salt okunur özellikleri:if(x.HasValue) j = x.Value;

    • HasValue Özelliği döndürür true değişkenine bir değer içeriyorsa veya false ise null.

    • Value Özellik atanmışsa aşağıdakilerden bir değer döndürür.Aksi takdirde bir System.InvalidOperationException oluşur.

    • Varsayılan değeri HasValue olan false.Value Özelliği varsayılan değeri vardır.

    • Ayrıca == ve != işleçleri türü olan bir null değeri, aşağıdaki örnekte gösterildiği gibi:if (x != null) y = x;

  • Kullanım ?? geçerli değeri null olabilecek bir tür zaman uygulanan varsayılan bir değer atamak için işleç null null olmayan bir türü örneğin atanırint? x = null; int y = x ?? -1;

  • İç içe geçmiş null türleri verilmez.Aşağıdaki satırı derlenmez:Nullable<Nullable<int>> n;

İlgili Bölümler

Daha fazla bilgi için:

C# dil belirtimi

Daha fazla bilgi için bkz: C# dil belirtiminin. Dil belirtimi, C# sözdizimi ve kullanımı için nihai kaynaktır.

Ayrıca bkz.

Başvuru

Nullable

Kavramlar

C# Programlama Kılavuzu

Diğer Kaynaklar

Visual C#

C# Başvurusu

Tam olarak ne yaptığını örneği 'ortalama Yukarı'?