C#可空類型學習

來源:互聯網
上載者:User

一、定義:

      C#可空類型的定義很簡單,一個簡單類型的符號加一個問號即可,如:

             int? cc

      這樣就定義了一個可空類型。

二、初始化:

      可空類型的初始化與非可空類型的初始化有一個最大的不同就在於可以為可空類型分配null值,比如以下的方法都是可以的:

             int? cc=10;

             int? cc=null;(非可空類型絕對不能這樣初始化)

三、使用

       使用可空類型其實很簡單,只需要首先判斷它是不空值,可採用以下的方法

              if(cc==null)

              {

                  ........

               }

        另外的一種方法是:可空類型有兩個屬性,一個是HasValue,一個是Value。其中第一個是用來判斷它是不是null,如果是返回false,

        如果不是返回true,當該屬性的值為true時,可以使用Value屬性擷取它的值,比如cc.Value,當然也可以直接使用cc而不加Value.

                if(cc.HasValuesl)

              {

                  ........

               }

四、類型的轉換

      可空類型在不為Null的情況下,如果要轉換為非可空類型,必須顯示轉換。

      而非可空類型則可以隱式轉換為可空類型,如以下的代碼:

                int  dd=(int)cc;(此外缺少null值的判斷代碼,省略掉了)

                int? cc=dd;

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.