c#中的Nullable(可空類型)

在C#中使用Nullable類型(給整型賦null值的方法)數據庫

在C#1.x的版本中,一個值類型變量是不能夠被賦予null值的,不然會產生異常。在C#2.0中,微軟提供了Nullable類型,容許用它定義包含null值(即空值)的數據類型,這對處理數據庫中包含可選字段以及不少方面都有很大幫助。spa


(1)定義Nullable類型code

定義一個nullable類型很是相似於定義一個非nullable類型。不一樣之處在於使用類型修飾符「?」。blog

好比定義一個整型以下:it

int myInt = 1;class

    要使一個整型變量能夠存儲一個null值,能夠以下聲明:變量

int? myNullableInt= 1;數據類型

    這兩個變量看起來彷佛是同樣的。但事實並不是如此。實際上,Nullable類型是一個結構體,它有兩個公開可讀字段:HasValue和Value。 HasValue是一個布爾值,當有值存儲時它爲真,當變量值爲null時HasValue爲假。當HavValue爲真是時,能夠取得變量的值;爲假時,當嘗試取得變量的值時會拋出一個異常。方法

            int? num = null;
            if (num.HasValue)
            {
                System.Console.WriteLine("num = " + num.Value);
            }
            else
            {
                System.Console.WriteLine("num = Null");
            }

 

如今null是C#的一個關鍵字,它能夠被賦給一個Nullable型變量。下面是對Nullable型變量賦值的兩種有效方式。數據

double? myDouble =3.14159;

double?myOtherDouble = null;

相關文章
相關標籤/搜索