C#類型轉換

來源:互聯網
上載者:User

標籤:

1.隱式轉換:

小的資料類型範圍轉換為大的資料類型例如

int i=100;

long j=i;

子類轉換為基類

2.顯示轉換

第一種

long j=100;

int i=(int)j;有可能會發生資料的丟失

第二種

通過一些類型內建的方法轉換,例如int.Parse( "11");

以上兩種方法如果轉換的資料不能轉換為對應的目標類則在編譯的時候會報異常。

所以可以採用以下兩種方法判斷

int test;

 a.bool result=int.TryParse("asd",out test);

上面的代碼不會報異常無法轉換時會把int賦值預設的值即test=0。

b.對於參考型別和可為空白的類型可以使用as  關鍵字

Class1 c1=(c1)c2;

以上代碼會報異常

應 使用Class1 c1=c2 as Class1;

如果不能正常轉換則c1的值為null.

3.裝箱和拆箱

裝箱就是實值型別轉換為應用類型

反之為拆箱,也就是棧的資料和堆的資料的相互轉換。容易消耗電腦的資源,所以應儘可能的避免裝箱和拆箱的操作。

4.Nullrable

可空類型。int?a=3;表示int的數實值型別也可以為空白。還有一種寫法是System.Nullable<int> test2 = 100;

int test=a??500;的用法表示如果a為null則賦值你預設值500。

---像個男人一樣去戰鬥!

 

C#類型轉換

聯繫我們

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