08.C# System.Nulable<T>和Null 參考操作符(四章4.2-4.4)

來源:互聯網
上載者:User

標籤:

  看了這3小節,發現作者講得太詳細了,把一個都在正常使用的用法說得太神密了,搞得不知是自己不懂作者的苦心,還是作者用意為之,這裡給大家都簡單講下吧,太深的真心講不下去。

  1.可空類型的核心部分是System.Nullable<T>,除了這個之外,還有由靜態類System.Nullable提供的工具方法。

  2.Nullable<T>是一個泛型型別,型別參數T是一個實值型別約束。

  3.T的類型稱為可空類型的基礎類型。

  4.Nullable<T>有兩個建構函式,一個用於建立沒有值的執行個體,一個接收T的一個執行個體作為值

1 Nullable<int> n = new Nullable<int>();2 Nullable<int> n1 = new Nullable<int>(1);

  5.架構提供了兩個轉換,T到Nullable<T>的隱式轉換,Nullable<T>可以顯式轉換為T

1 Nullable<long> nL = 7;2 long L = (long)nL;3 4 //報錯,需要顯式轉換5 //long ll = nL;

  說到上述第一行代碼,讓我想起C++中的複製構造方法,或者一個參數的構造方法,大家可以去看下,C#應該也上C++中的實現吧。

  6.Nullable<T>的裝箱和拆箱,不知道可不可以理解成T到Nullable<T>的隱式轉換是裝箱,Nullable<T>可以顯式轉換為T是拆箱。

  7.可以使用文法糖,減少代碼的輸入,使用一個符號"?"

1 int? intNull = null;

  8.可以使用null進行比較,如上

  9.可空類型可參與運算子,其中會包含一些類型轉換,個中體會用過了就發現和一般的類型一樣,又因為可空類型可以使用null表示,就可以參與邏輯運算子(就是返回true和false那些)。當然也可以想到對於運算子as也是正常且可用。

  請斧正。

 

08.C# System.Nulable<T>和Null 參考操作符(四章4.2-4.4)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.